1 #define _CRT_SECURE_NO_WARNINGS 1
2 #include<bits/stdc++.h>
3 char str[100][40];
4 char s[1005];
5
6 int remark[2000][2] = { 0 };
7 /*第一行为一个整数 n,表示违禁词库有 n(1≤n≤100) 个。
8 第 2 行到第 n+1 行,每行有一个字符串 s (2≤|s|≤30) 表示违禁词,且均为小写字母。
9 第 n+2 行是一个字符串 t (2≤|t|≤1000),表示Keichi需要发送的信息,也均为小写字母。
10 其中 |s| 表示字符串 s 的长度。*/
11
12 int main()
13 {
14 int n;
15 scanf("%d", &n);
16 for (int i = 0; i < n; i++) {
17 scanf("%s", str[i]);
18 }//type in banned words
19 scanf("%s", s);//type in a long word jugded
20 int len = strlen(s),k=0;//获得总长度
21
22
23 for (int i = 0; i < n; i++) {//对每一个违禁词进行判断
24 int length = strlen(str[i]);//获得违禁词长度
25 int cnt = 0;//初始化已判断过的长度
26 int flag = 1,start=0,end=0;//打星号的标记,若为真一直为1
27 for (int j = 0; j < len;) {//对长串从头到尾进行判断
28
29 start = j;//记录开始的位置
30 while (s[j] == str[i][cnt] && s[j] != '\0' && cnt != length) {
31 cnt++;
32 j++;
33 flag = 1;
34 }
35
36 end = j;//标记结束的位置
37 if (!cnt || flag) { j=start+1; flag = 0; }
38 if (cnt < length) {
39 end = start;
40 }
41
42 //把那一段划掉
43 if (end - start > 0) {
44 remark[k][0] = start;
45 remark[k][1] = end;
46 k++;
47 //printf("[%d,%d]\n", start, end);
48 }//记录所在的区间
49 cnt = 0;
50
51 }
52 }
53 for (int i = 0; i < k; i++) {
54 for (int j = *(*(remark+i)+0); j < *(*(remark + i) + 1); j++) {
55 s[j] ='*';
56 }
57 }
58 printf("%s\n", s);
59 int cnt = 0;
60 for (int i = 0; i < len; i++) {
61 while (s[i] == '*'&&cnt<2) {
62 printf("%c", s[i]);
63 cnt++;
64 }
65 if (s[i] == '*' && cnt == 2) {
66 continue;
67 }
68 printf("%c", s[i]);
69 cnt = 0;
70 }
71 printf("\n");
72 return 0;
73 }

1945-祖安 say hello-String的更多相关文章

  1. apk安装包信息

    String archiveFilePath="sdcard/DangDang.apk";//安装包路径          PackageManager pm = getPacka ...

  2. kotlin学习笔记-异常好玩的list集合总结

    不积跬步无以至千里,不积小流无以成江海 先看看Kotlin中for循环的遍历 fun testList(){ var StringVal = "12_12_13_15_a_b_c_d_yu_ ...

  3. 跟着我一起学习大数据——Hadoop

    hadoop配置文件:http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.9.0/ 一:Hadoop简介 总结下起源于Nutch项目,社区 ...

  4. Go语言系列之手把手教你撸一个ORM(一)

    项目地址:https://github.com/yoyofxteam/yoyodata 欢迎星星,感谢 前言:最近在学习Go语言,就出于学习目的手撸个小架子,欢迎提出宝贵意见,项目使用Mysql数据库 ...

  5. 使用java随机生成有个性的用户名,LOL地名+水浒传,合计2808个有意思的用户名

    * 随机生成用户名 * 取水浒传108好汉名字 * 取LOL地名26个,组合而成 * 一共可以生成2808个不同特色的用户名 如果你在上网的时候,用户名难取的话,这里有很多可选择的用户名,现提供100 ...

  6. 模板短信接口调用java,pythoy版(二) 阿里大于

    说明 功能:短信通知发送 + 短信发送记录查询,所有参数我没有改动,实测有效! 请自行参考 + 官方API! 短信模板示例:尊敬的${name},您的快递已在飞奔的路上,将在今天${time}送达您的 ...

  7. adroid 目录

    安桌程式安装后存在目录:\手机存储\Android\data 一: //  获取当前程序路径 getApplicationContext().getFilesDir().getAbsolutePath ...

  8. 使用java开源工具httpClient及jsoup抓取解析网页数据

    今天做项目的时候遇到这样一个需求,需要在网页上展示今日黄历信息,数据格式如下 公历时间:2016年04月11日 星期一 农历时间:猴年三月初五 天干地支:丙申年 壬辰月 癸亥日 宜:求子 祈福 开光 ...

  9. Android UiAutomator 自动化测试编译运行---新手2

    1.首先打开eclipse创建java项目

  10. 分享,iOS国家手机区号代码.plist

    APP注册需要手机号码的时候,如果有在其他国家的时候需要填写手机区号 一份有国家名字和区号的plist 参照微信注册的时候 格式是 <Array> <Array> <Ar ...

随机推荐

  1. 南京大学OS笔记(1)-应用眼中的操作系统

    南京大学OS笔记(1)-应用眼中的操作系统 早就想刷一刷南大JYY老师的os课.之前稍微看过几节,果然讲的风趣幽默,而且现场写代码展示水平确实很高,这次准备认真刷一刷然后好好记一下笔记.当然lab就不 ...

  2. SpringBoot 整合 Mybatis-Plus + Mysql

    mybatis-plus是mybatis的一款插件,它的主要作用是快速开发,省略mybatis的配置,具体的功能请参照官网. 开发环境: springboot,maven,mybatis-plus,m ...

  3. c++学习笔记5(函数的缺省参数)

    例: void func(int x1,int x2=2,int x3=3){} func (10)//等效于func (10,2,3) func (10,8)//等效于func (10,8,3) f ...

  4. 大爽Python入门教程 0-3 安装Atom与配置Python环境

    大爽Python入门公开课教案 点击查看教程总目录 安装轻量级IDE--Atom 一 下载 下面步骤1,2中网络卡顿的朋友, 请直接查看步骤3来操作 1. 搜索官网 使用搜索引擎搜索Atom, 打开搜 ...

  5. web页面自动化总结。selenium

    web自动化测试终篇:总结我理解的ui自动化,整理归纳: https://blog.csdn.net/CCGGAAG/article/details/89669592 web页面自动化知识点 1.we ...

  6. WinForm训练一_改变窗体大小

    1 //引用系统命名空间 2 using System; 3 //项目命名空间 4 using System.Collections.Generic; 5 using System.Component ...

  7. [loj6278]数列分块入门2

    做法1 以$K$为块大小分块,并对每一个块再维护一个排序后的结果,预处理复杂度为$o(n\log K )$ 区间修改时将整块打上标记,散块暴力修改并归并排序,单次复杂度为$o(\frac{n}{K}+ ...

  8. 流程图(flowchart)语法学习

    创建流程图需要选择语言: mermaid流程中的代码包裹graph 这里写顺序end流程图方向:从上到下(TB),从下到上(BT),从左到右(LR),从右到左(RL) TB - 从上到下TD - 自上 ...

  9. 『学了就忘』Linux权限管理 — 56、不可改变位权限(chattr)

    目录 1.命令格式 2.查看文件系统属性chattr权限 3.示例 文件系统属性chattr权限,也叫不可改变位权限,该权限没有风险,但是他能限制root用户. 1.命令格式 [root@localh ...

  10. Hive处理Json数据

    Json 格式的数据处理 Json 数据格式是我们比较常用的的一种数据格式,例如埋点数据.业务端的数据.前后端调用都采用的是这种数据格式,所以我们很有必要学习一下这种数据格式的处理方法 准备数据 ca ...