ccf 字符串匹配
来源:互联网 发布:特别想找个女朋友知乎 编辑:程序博客网 时间:2024/06/05 02:36
问题描述
给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。
输入格式
输入的第一行包含一个字符串S,由大小写英文字母组成。
第二行包含一个数字,表示大小写敏感的选项,当数字为0时表示大小写不敏感,当数字为1时表示大小写敏感。
第三行包含一个整数n,表示给出的文字的行数。
接下来n行,每行包含一个字符串,字符串由大小写英文字母组成,不含空格和其他字符。
第二行包含一个数字,表示大小写敏感的选项,当数字为0时表示大小写不敏感,当数字为1时表示大小写敏感。
第三行包含一个整数n,表示给出的文字的行数。
接下来n行,每行包含一个字符串,字符串由大小写英文字母组成,不含空格和其他字符。
输出格式
输出多行,每行包含一个字符串,按出现的顺序依次给出那些包含了字符串S的行。
样例输入
Hello
1
5
HelloWorld
HiHiHelloHiHi
GrepIsAGreatTool
HELLO
HELLOisNOTHello
1
5
HelloWorld
HiHiHelloHiHi
GrepIsAGreatTool
HELLO
HELLOisNOTHello
样例输出
HelloWorld
HiHiHelloHiHi
HELLOisNOTHello
HiHiHelloHiHi
HELLOisNOTHello
样例说明
在上面的样例中,第四个字符串虽然也是Hello,但是大小写不正确。如果将输入的第二行改为0,则第四个字符串应该输出。
评测用例规模与约定
1<=n<=100,每个字符串的长度不超过100。
代码仅供参考:
#include <iostream>#include <cstring>#include <cstdlib>#include <cstdio>using namespace std;const int size = 101;typedef bool (*cmpfunc)(char, char);inline bool ign_cmp(char a, char b){//printf("a = %c\n", a);//printf("b = %c\n", b);//printf("a - b = %d\n", (a - b));//printf("abs(a-b) = %d\n", abs(a - b));//printf("'a' - 'A' = %d\n", 'a' - 'A');if (a == b) return true;return abs((int)(a - b)) == (int)('a' - 'A');}inline bool cmp(char a, char b){return a == b;}bool compare(char *a, char *b, bool is_ign){int i = 0, j = 0;cmpfunc func;int len_a = strlen(a); // int len_b = strlen(b);if (is_ign) func = cmp; // 等于1时不忽略大小写 else func = ign_cmp; // 否则忽略大小写 while (j <= len_b){if (i >= len_a) // 当 return true;if (func(b[j], a[i])){j++;i++;}else{j++;i = 0;}}return false;}int main(){char str[size];char input[size];int is_ign;int n; // 输入的字符串的个数 std::cin >> str;std::cin >> is_ign;std::cin >> n;while(n--){std::cin >> input; // 输入字符串if (compare(str, input, is_ign)) std::cout << input << endl;}return 0;}
0 0
- ccf题目:字符串匹配
- CCF 字符串匹配
- 【CCF】字符串匹配
- CCF试题:字符串匹配
- ccf 字符串匹配
- ccf 字符串匹配
- ccf 字符串匹配
- CCF 字符串匹配
- CCF 字符串匹配
- CCF字符串匹配
- ccf试题 字符串匹配
- ccf认证字符串匹配
- 字符串匹配-CCF测试往届题
- CCF 字符串匹配201409-3
- CCF 201409-3 字符串匹配
- CCF-201409-3-字符串匹配
- CCF-201409-3 字符串匹配
- CCF 201409-3 字符串匹配
- Android程序反编译-1
- hdu 5585 水题 Numbers 2015.11.28 bestcoder 1001
- 布隆过滤器初识
- Handler Looper Message的源码分析
- Single Number II
- ccf 字符串匹配
- ActiveMQ和JMS的使用
- recyclerview出现的问题
- 实时搜索引擎Elasticsearch(5)——Java API的使用
- HDU 5587 Array (规律)
- ios之自定义导航栏背景,标题和返回按钮文字颜色
- (php)实现批处理文件以及PHPExcel的实践
- 南大软院大神养成计划--第十三天网页细节处理中
- 工业4.0时代袭来