50分求助,3 5 7 8 9过不了
查看原帖
50分求助,3 5 7 8 9过不了
848465
ganxingyu楼主2022/12/12 20:31

快救救孩子吧 代码:

#include<iostream> 
#include<math.h>
#include<string>
#include<cstring>
using namespace std;
const int N=1e6;
string s[N];
int t;
#define int long long
signed main()
{
	string s,s1;
	getline(cin,s);
	getline(cin,s1);
	int b=s.length(),a=s1.length();
	for(int i=0;i<b;i++)
	{
		s[i]=tolower(s[i]);
	}
	for(int i=0;i<a;i++)
	{
		s1[i]=tolower(s1[i]);
	}
	int c=s1.find(s);
	if(c==-1)
	{
		cout<<-1;
		return 0;
	}
	int o=0,p=0;
	for(int i=0;i<a;i++)
	{
		if(s1[i]==s[0])
		{
			if(i==0)
			{
				if(s1[b]!=' ') continue;
			}
			else
			{
				if(s1[i-1]!=' '||s1[i+b]!=' ') continue;
			}
			bool flag=1;
			for(int j=1;j<b;j++)
			{
				if(s[j]!=s1[i+j]) flag=0;
				if(flag==0) continue;
			}
			if(flag==1) 
			{
			   t++;
			   if(p==0)
			   {
			   	   o=i;
			   }
			   p=1;
		    }
		}
	}
	if(t==0) cout<<-1;
	else cout<<t<<" "<<c;
	return 0;
}
/**/
2022/12/12 20:31
加载中...