#8#9#10,TLE,能不能优化一下
查看原帖
#8#9#10,TLE,能不能优化一下
416242
New_hope楼主2022/1/23 19:48

能不能不用字符串函数

#include<bits/stdc++.h>
using namespace std;
int main()
{
	char a[30],b[1000010];
	int i,j;
	int ansf,appt=0;
	bool f1=0;
	cin.getline(a,20);
	cin.getline(b,1000010);
	for(i=0;i<strlen(a);i++)
	{
		if(a[i]>='a'&&a[i]<='z') 
			a[i]=char(a[i]-32);
	}
	for(i=0;i<strlen(b);i++)
	{
		if(b[i]>='a'&&b[i]<='z') 
			b[i]=char(b[i]-32);
	}
	for(i=0;i<strlen(b);i++)
	{
		while(b[i]==' ') i++;
		int len=0,x=i;
		while(b[i]!=' ')
		{
			len++;
			i++;
		}
		if(b[x]==a[0])
		{
			bool flag=1;
			j=0;
			for(int k=x;k<x+len;k++)
			{
				if(b[k]!=a[j])
				{
					flag=0;
					break;
				}
				j++;
			}
			if(flag&&len==strlen(a))
			{
				if(!f1) 
				{
					ansf=x;
					f1=1;
				}
				appt++;
			}
		}
	}
	if(!appt)
	{
		cout<<"-1";
		return 0;
	}
	cout<<appt<<" "<<ansf;
	return 0;
	
}
2022/1/23 19:48
加载中...