50分求助
查看原帖
50分求助
1021663
__hjwucj__楼主2023/8/24 19:15
#include <bits/stdc++.h>
#define int long long
using namespace std;
string s,s1;
int ans=0;
bool pd (int x,int y)
{
	if (x-1>=0)
		if (s1[x-1]>='a'&&s1[x-1]<='z')
			return false;
	if (x+y<s1.size ())
		if (s1[x+y]>='a'&&s1[x+y]<='z')
			return false;
	return true;
}
signed main ()
{
	getline (cin,s);
	getline (cin,s1);
	for (int i=1;i<=s.size ();i++)
		if (s[i-1]>='A'&&s[i-1]<='Z')
			s[i-1]+=32;
	for (int i=1;i<=s1.size ();i++)
		if (s1[i-1]>='A'&&s1[i-1]<='Z')
			s1[i-1]+=32;
	int t=s1.find (s);
	int l=t+s.size ()-1;
	while (s1.find (s)!=-1&&pd (s1.find (s),s.size ()))
	{
		s1.erase (0,l);
		l=s1.find (s)+s.size ()-1;
		ans++;
	}
	if (ans!=0) cout<<ans<<' '<<t<<endl;
		else cout<<-1<<endl;
	return 0;
}
2023/8/24 19:15
加载中...