1 条题解
-
0
思路分析
1. 任务拆解: 比较两个字符串,判断其中一个是否是另一个的子串。
2. 关键点分析:
- 需要双向检查:a是否是b的子串,或者b是否是a的子串
- 使用字符串的
find函数来查找子串 - 根据查找结果输出相应的信息
3. 步骤规划:
- 第一步: 读取两个字符串。
- 第二步: 检查第一个字符串a是否是第二个字符串b的子串:
- 如果是,输出"a is substring of b"
- 第三步: 如果a不是b的子串,检查b是否是a的子串:
- 如果是,输出"b is substring of a"
- 第四步: 如果两者都不是对方的子串,输出"No substring"。
4. 代码对应:
getline(cin,a);和getline(cin,b);读取两个字符串b.find(a,q)在b中查找aif(b.find(a,q)!=-1)检查a是否是b的子串- 如果找到,输出相应的子串关系
- 如果没找到,输出"No substring"
注意: 参考代码只检查了a是否是b的子串,但没有检查b是否是a的子串。完整的逻辑应该像上面步骤规划那样双向检查。
简单理解: 就像比较两个单词,看其中一个是否包含在另一个里面,要两个方向都检查一下。
信息
- ID
- 1753
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 269
- 已通过
- 126
- 上传者