90分WA一个点求助
查看原帖
90分WA一个点求助
482756
xianjing楼主2023/9/27 21:17
#include <bits/stdc++.h>
///////////////////////////
using namespace std;

char change(char x){
	if(x>='A'&&x<='Z'){
		x=x-'A'+'a';
	}
	return x;
}

int main(){
	string a,t;///target n           a为输入 m
	int f=-1,sum=0;
	getline(cin,t);
	getline(cin,a);
	int m=a.size();
	int n=t.size();
	bool flag=true,flagF=true;
	int k=0;
	for(int i=0;i<m;i++){
		if(flag==false){
			if(a[i]==' '){
				flag=true;
			}
			else continue;
		}
		else{
			if(a[i]==' '){
				continue;
			}
			if(change(t[k])==change(a[i])){
				k++;
				if(k==n&&(i+1==m||a[i+1]==' ')){
					sum++;
					if(flagF){
						f=i-n+1;
						flagF=false;
					}
					k=0;
					flag=false;
				}
			}
			else{
				k=0;
				flag=false;
			}
		}
	}
	if(f==-1){
		cout<<f;
	}
	else{
		cout<<sum<<" "<<f;
	}
	return 0;
}

有个很大的数据没过,出现了的字符输出了-1

2023/9/27 21:17
加载中...