560 字
2 分钟阅读
找次数
题目描述
给出两个非空字符串 x,y 。找出字符串 y 在字符串 x 中出现的次数, x,y 只包含大小写英文字符。
输入格式
第一行输入字符串 x ,保证长度不超过 5000 。
第二行给出字符串 y ,保证长度小于等于 | x | 。
输出格式
在一行中输出字符串 y 在字符串 x 中出现的次数。
输入样例
cpacpacpa
cpa
输出样例
3
题意
s_1 中有多少个子串等于 s_2 。
思路
枚举每个下标,截取从此下标开始的长度为 | s_2 | 的子串,判断是否和 s_2 相等,相等答案 +1 。
代码
void solve(){
string s1,s2;
cin >> s1 >> s2;
int ans = 0;
for(int i = 0;i < s1.size();i++){
if(s1.substr(i,s2.size()) == s2){
ans++;
}
}
cout << ans;
}

[…] 找次数 题解 […]