TLE了。。50分求教
查看原帖
TLE了。。50分求教
1612650
Aya_ylxatch楼主2025/1/15 22:54
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
bool is(string x,string y);
const int N=1e6+10;
char sentence[N];
string word,reach;
int cnt,first=-1;
int main(){
	freopen("Aya.in","r",stdin);
	freopen("Aya.out","w",stdout);
	cin>>reach;getchar();
	fgets(sentence,N,stdin);
	for(int i=0;sentence[i];++i){
		if('a'<=sentence[i]&&sentence[i]<='z'||'A'<=sentence[i]&&sentence[i]<='Z')word+=sentence[i];
		else{
			if(is(word,reach)){
				cnt++;
				if(first+1==0)first=i-reach.size();
			}word.clear();
		}if(i==strlen(sentence)-1&&!word.empty()){
			if(is(word,reach)){
				cnt++;
				if(first+1==0)first=i-reach.size();
			}word.clear();
		}
	}if(!cnt)printf("%d",first);
	else printf("%d %d",cnt,first);
	fclose(stdin);fclose(stdout);
	return 0;
}bool is(string x,string y){
	if(x.size()-y.size())return false;
	for(int i=0;x[i];++i){
		if(x[i]==y[i]||x[i]-y[i]==32||y[i]-x[i]==32);
		else return false;
	}return true;
}
2025/1/15 22:54
加载中...