问题描述

试题编号: 201409-3
试题名称: 字符串匹配
时间限制: 1.0s
内存限制: 256.0MB
问题描述:
问题描述
给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。
输入格式
输入的第一行包含一个字符串S,由大小写英文字母组成。
  第二行包含一个数字,表示大小写敏感的选项,当数字为0时表示大小写不敏感,当数字为1时表示大小写敏感。
  第三行包含一个整数n,表示给出的文字的行数。
  接下来n行,每行包含一个字符串,字符串由大小写英文字母组成,不含空格和其他字符。
输出格式
输出多行,每行包含一个字符串,按出现的顺序依次给出那些包含了字符串S的行。
样例输入
Hello
1
5
HelloWorld
HiHiHelloHiHi
GrepIsAGreatTool
HELLO
HELLOisNOTHello
样例输出
HelloWorld
HiHiHelloHiHi
HELLOisNOTHello
样例说明
在上面的样例中,第四个字符串虽然也是Hello,但是大小写不正确。如果将输入的第二行改为0,则第四个字符串应该输出。
评测用例规模与约定
1<=n<=100,每个字符串的长度不超过100。

思路

用C++的string变量实现。
在Gcc环境中,不支持小写转换函数strlwr();
在Dev-C++环境中,是支持函数strlwr()的。

代码

#include<iostream>
#include<cstring>
using namespace std;
int main()
{char key[101],s[101],lowerkey[101],lowers[101];int option,n;cin>>key>>option>> n;// 获得key的小写字符串,放在变量lowerkey中
    strcpy(lowerkey,key);strlwr(lowerkey);while(n--){cin>>s;if(option==0)  // 大小写无关
        {strcpy(lowers,s);strlwr(lowers);if(strstr(lowers,lowerkey))cout<<s<<endl;}else // option=1,大小写有关
        {if(strstr(s,key))cout<<s<<endl;}}return 0;
}

转载于:https://www.cnblogs.com/5211314jackrose/p/7530739.html

CCF - 201409-3 - 字符串匹配相关推荐

  1. *3-4 CCF 2014-09-3 字符串匹配

    字符串匹配 题目描述 源代码 关于这题 题目描述 源代码 #include<iostream> #include<cstring> using namespace std; c ...

  2. 字符串匹配shiftand算法

    令人惊叹的Shift-And/Shift-Or 写在前面:Shift-And/Shift-Or是如此令人惊叹的算法,在KMP基础上开始一段神奇之旅. 目的:以Shift-And算法为载体,试图在减少思 ...

  3. 字符串匹配数据结构 --Trie树 高效实现搜索词提示 / IDE自动补全

    文章目录 1. 算法背景 2. Trie 树实现原理 2.1 Trie 树的构建 2.2 Trie树的查找 2.3 Trie树的遍历 2.4 Trie树的时间/空间复杂度 2.5 Trie 树 Vs ...

  4. 2021年度训练联盟热身训练赛第四场 H - Rock Paper Scissors(字符串匹配,FFT)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 2021年度训练联盟热身训练赛第四场 H - Rock Paper Scissors(字符串匹配,FF ...

  5. Rabin-Karp ( 字符串匹配 )详解

    字符串匹配,例从 字符串S 中( 长度为 n ),找到 字符串T ( 长度为 m ) 经典思路:遍历 字符串 S,对于每个都为起点,匹配一次,则 O( n m )的复杂度 但是这样我们就对 字符 重复 ...

  6. 字符串匹配KMP算法

    字符串匹配KMP KMP过程其实就是去找下一个更好的状态的过程,省略去了中间穷举的无用过程,直接跳到下一个更好的状态,通过模式串本身的信息,站在模式串的角度来考虑问题 取长的一对 若想让模式串直接从S ...

  7. c int转字符串_【C++实现python字符串函数库】字符串匹配函数startswith与endswith

    [C++实现python字符串函数库]字符串匹配函数startswith与endswith 这两个函数用于匹配字符串的开头或末尾,判断是否包含另一个字符串,它们返回bool值.startswith() ...

  8. R语言stringr包str_count函数计算字符串匹配个数实战

    R语言stringr包str_count函数计算字符串匹配个数实战 目录 R语言stringr包str_count函数计算字符串匹配个数实战 #导入stringr包 #仿真数据

  9. 三十五、字符串匹配问题--KMP算法

    一.暴力匹配算法实现字符串匹配 如果用暴力匹配的思路,并假设现在 str1 匹配到 i 位置,子串 str2 匹配到 j 位置,则有: 如果当前字符匹配成功(即 str1[i] == str2[j]) ...

最新文章

  1. 测试sql语句执行时间
  2. KubeCon 北美前瞻|在 2020 最后,容器领域有哪些值得你关注的话题?
  3. 由哥倫比亞預防醫學中心想到的
  4. Pdshell教程-利用现有数据库(没有PDM情况下)导出数据库PMD文件
  5. Apache Camel 3 –骆驼核心vs骆驼核心引擎(较小的核心)
  6. mysql 获取天数_MySQL获取某月份的天数
  7. [转载]GIF、JPEG 和 PNG的区别在哪里?
  8. 计划的执行与回顾的重要性与必要性
  9. Oracle 12c因bug导致ORA-04031问题处理过程 | 云和恩墨技术通讯精选
  10. python中文版电脑下载-Python IDLE下载
  11. addressof表达式不能转换为long_【C语言】03-数据类型、运算符与表达式
  12. wps桌面图标不显示问题
  13. Openjudge 1.13 33:实数加法
  14. 电工与电子技术基础【3】
  15. Linux系统基础命令详细总结,不定期更新,建议收藏
  16. 深度学习多卡配置_想要自己搭建深度学习的 gpu 集群,一些问题请教大家,万分感谢!...
  17. 用python制作二维码_使用python制作二维码
  18. 关于Ajax的英雄联盟查询英雄案例
  19. win10查看电脑开机时长
  20. 命名管道的数据通信代码

热门文章

  1. 2022-2028年中国PET薄膜行业市场深度分析及未来趋势预测报告
  2. java 解释型和编译型
  3. 编写可调模板并使用Auto-tuner自动调谐器
  4. H.264 Video Codec速度和质量
  5. TensorRT IRNNv2Layer
  6. 使嵌入式系统调试更容易:有用的硬件和软件提示
  7. 低层级GPU虚拟内存管理引论
  8. 未来几年自动驾驶预测(上)
  9. CVPR2020最新论文扫描盘点(上)
  10. 2021年大数据Spark(一):框架概述