codevs 2761 脏话过滤

时间限制: 1 s

空间限制: 8000 KB

题目等级 : 白银 Silver

题目描述 Description

某论坛希望打造文明论坛,对于每个帖子需要将脏话换成*输出。

脏话有38,250,2B,BT,TMD,PIG,SHIT,FUCK。

若没有一个脏字,则此人文明。

否则不文明。

对于有重叠部分的脏话需全部替换。

输入描述 Input Description

字符串

输出描述 Output Description

修改字符串

是否文明(YES或NO)。

样例输入 Sample Input

322BBBTTFUCPIGKSHITMDD8

样例输出 Sample Output

32**B**TFUC***K******D8

NO

数据范围及提示 Data Size & Hint

字符串长度<=100.只有数字和大写字母。

对字符串处理存在很大缺陷。。

屠龙宝刀点击就送

#include <iostream>
#include <string>
#include <cstdio>
using namespace std;

bool flag;

string str,a[9]={"38","250","2B","BT","TMD","PIG","SHIT","FUCK"};
int ln,k=-1,wz[9],len[9]={2,3,2,2,3,3,4,4};
bool vis[100+50];
void find_(int pos)
{
    int i=0;
    while(i<ln)
    {
        if(str[i]==a[pos][0])
        {
            int x=0;
            int z=i,k=i;
            while(str[k]==a[pos][x]&&k<ln)
            {k++;x++;}
            if(x==len[pos])
            {
                for(int j=z;j<=z+len[pos]-1;j++) vis[j]=1;
                flag=1;
            }
        }
        i++;
    }
}
int main()
{
    cin>>str;
    ln=str.length();
    while(k<=6) find_(++k);
    for(int i=0;i<ln;i++) if(vis[i]) str[i]=‘*‘;
    cout<<str<<endl;
    flag==0?printf("YES"):printf("NO");
    return 0;
}
时间: 2024-10-15 00:39:00

codevs 2761 脏话过滤的相关文章

Struts 2.0全面分析

Struts 2.0 struts 1---前端控制+应用控制+命令模式 webwork ---控制器+拦截器+代理 Struts 2.0 继承了WebWork的设计理念,并没有继承struts 1,所以与struts 1是截然不同的~! ------------------------------------------------------- Struts 2.0的简单实例: web.xml中 <filter> <filter-name>struts2</filter-

过滤器的相关知识

[Cookie技术] * 利用Cookie记住用户的用户名和密码. [Filter:过滤器的概述] 什么是过滤器Filter:  可以过滤从客户端向服务器发送的请求. 过滤器的使用: * 进行IP的过滤,脏话过滤,自动登录,响应压缩... 使用过滤器: * 编写一个类实现Filter接口: * 配置过滤器: [过滤器的生命周期]:(了解) 过滤器的创建和销毁: * 创建:服务器启动的时候. * 销毁:服务器关闭的时候. [FilterChain:过滤器链] 过滤器链中的过滤器的执行的顺序与<fi

过滤器应用案例分析

----------------------------------------------------------------------------------------------[版权申明:本文系作者原创,转载请注明出处] 文章出处:http://blog.csdn.net/sdksdk0/article/details/52077359作者:朱培      ID:sdksdk0      邮箱: [email protected] --------------------------

游戏编程精粹系列书籍目录一览

游戏编程精粹1 第1章 通用编程技术 1.0 神奇的数据驱动设计(Steve Rabin) 3 1.0.1 点子1--基础 3 1.0.2 点子2--最低标准 3 1.0.3 点子3--杜绝硬编码 3 1.0.4 点子4--将控制流写成脚本 4 1.0.5 点子5--什么时候不适合使用脚本? 5 1.0.6 点子6--避免重复数据 5 1.0.7 点子7--开发工具来生成数据 6 1.0.8 结论 6 1.1 面向对象的编程与设计技术(James Boer) 7 1.1.1 代码风格 7 1.1

PHP三层结构(下)——PHP实现AOP

让我们把注意力集中到中间服务层上来.中间服务层代码比较简单,只是调用数据访问层代码将留言保存到数据库.如代码1所示: // 代码 1 // 中间服务层 class LWordServiceCore implements ILWordService { // 添加留言 public function append($newLWord) { // 调用数据访问层 $dbTask = new LWordDBTask(); $dbTask->append($newLWord); } }; 在看到留言板的

转:鏖战双十一-阿里直播平台面临的技术挑战(webSocket, 敏感词过滤等很不错)

转自:http://www.infoq.com/cn/articles/alibaba-broadcast-platform-technology-challenges 鏖战双十一-阿里直播平台面临的技术挑战 作者 陈康贤 发布于 2016年1月28日 | 2 讨论 分享到:微博微信FacebookTwitter有道云笔记邮件分享 稍后阅读 我的阅读清单 前言:一直以来双十一都是以交易为重心,今年当然也是如此,但是这并不妨碍万能的淘宝将双十一打造的让用户更欢乐.体验更丰富.玩法更多样.内容更有趣

上传图片shell绕过过滤的几种方法

一般网站图片上传功能都对文件进行过滤,防止webshelll写入.但不同的程序对过滤也不一样,如何突破过滤继续上传? 本文总结了七种方法,可以突破! 1.文件头+GIF89a法.(php)//这个很好理解,直接在php马最前面写入gif89a,然后上传dama.php 2.使用edjpgcom工具向图片注入代码.(php)//edjpgcom修改,加入php一句话保存为dama.php 3.cmd命令下copy 图片.GIF+shell.php webshell.php (php) //估计和1

JavaWeb 后端 &lt;十二&gt; 之 过滤器 filter 乱码、不缓存、脏话、标记、自动登录、全站压缩过滤器

一.过滤器是什么?有什么? 1.过滤器属于Servlet规范,从2.3版本就开始有了. 2.过滤器就是对访问的内容进行筛选(拦截).利用过滤器对请求和响应进行过滤 二.编写步骤和执行过程 1.编码步骤: a.编写一个类:实现javax.servlet.Filter接口 public class FilterDemo1 implements Filter { public FilterDemo1(){ System.out.println("调用了默认的构造方法"); } //用户每次访

Filter过滤器(自动登陆、通用的字符集编码的过滤【处理不同请求的乱码问题】、。。。)

Filter过滤器:可以过滤(拦截)从客户端向服务器发送的请求. 过滤器的作用: 进行ip的过滤,脏话敏感词语的过滤,自动登陆,响应压缩... 过滤器的使用: 1.编写类实现Filter接口. destroy()销毁 doFilter(servletRequest request,ServletResponse response,FilterChain chain)拦截过滤 eg:chain.doFilter(request,response);//执行此代码表示放行到下一个过滤器中,如果没有下