文章目录
- 题目
- 题目描述
- 输入
- 样例输入
- 样例输出
- 思路
- AC代码
题目
题目描述
一个字符串中任意个连续的字符组成的子序列为该字符串的子串。给定子串s1
和它的一个字符串s2
,求s1
在s2
中出现的次数。
输入
第一行,表示字符串s1
, 第二行,表示字符串s2
输出
一个整数,代表s1
在s2
中出现的次数。
样例输入
ab
abbaabcaabc
样例输出
3
思路
在在s2
里寻找s1
,找到了返回位置,然后再从s2
的第p+1
个位置开始寻找s1
AC代码
#include<bits/stdc++.h>
using namespace std;
int main() {string s1,s2;int p,s=0;cin>>s1>>s2;p=s2.find(s1);//在s2里寻找s1,找到了返回位置while(p!=-1) {s++;p=s2.find(s1,p+1);//从s2的第p+1个位置开始寻找s1}cout<<s;return 0;
}