袁老师版题解
2025-07-15 11:41:27
发布于:广东
23阅读
0回复
0点赞
袁老师版题解
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s,t;
getline(cin, s);
getline(cin, t);
s += ' ';
t += ' ';
for(int i=0; i<s.size(); i++) if(s[i]<'a') s[i]+=32; //大写转小写
for(int i=0; i<t.size(); i++) if(t[i]<'a') t[i]+=32; //大写转小写
int cnt = 0, first=-1;
for(int i=0, j=0; i<t.size(); i++) //i模拟多的那个 j是小单词
{
if(j>=0 && t[i] == s[j]) //只要两指针的字符相同
{
j++;
if(j == s.size()) //字数够了
{
cnt++;
if(first<0)
first = i+1-j;
j=0; //小指针清0
}
}else if(t[i]=='@') //有空格出现
j=0; //小指针清0
else //否则不算
j=-1;
}
if(cnt)
cout << cnt << " " << first;
else
cout << -1;
return 0;
}
全部评论 4
袁老师版题解!点赞,关注!
2025-07-15 来自 广东
0袁老师版题解!点赞,关注!
2025-07-15 来自 广东
0袁老师版题解!点赞,关注!
2025-07-15 来自 广东
0袁老师版题解!点赞,关注!
2025-07-15 来自 广东
0
有帮助,赞一个