50分求助
查看原帖
50分求助
1118893
Dark_Star楼主2023/11/5 16:48
#include<bits/stdc++.h>
#define LL long long
#define D double
#define LD long double
#define S string
#define U unsigned
#define itn int
#define N int(1e6+1)
#define IX INT_MAX
#define IM INT_MIN
#define debug cout<<"debug"
using namespace std;
int main()
{
	S w,str,s1;bool f=0;int ans=0,k;
	cin>>w;
	getline(cin,str);//吃掉一个回车符
	getline(cin,str);
	int l=str.size(),wl=w.size();
	for(int i=0;i<=wl;i++)if(!islower(w[i])&&isalpha(w[i]))w[i]+=32;
	for(int i=0;i<=l;i++)if(!islower(str[i])&&isalpha(str[i]))str[i]+=32;
	for(int i=0;i<=l-wl;i++)
	{
		s1="";
		for(int j=1;j<=wl;j++)s1+=str[i+j-1];
		if(s1==w&&str[str.find(s1)-1]==32&&str[str.find(s1)+wl]==32){ans++;if(!f){f=1;k=i;}}
	}
	if(ans==0)cout<<-1;else cout<<ans<<' '<<k;
	return 0;
}
2023/11/5 16:48
加载中...