求助 只有20分 样例能通过 找不到哪里错了
查看原帖
求助 只有20分 样例能通过 找不到哪里错了
491392
dy99楼主2021/3/22 15:59
#include<bits/stdc++.h>
using namespace std;

int k=0,t=0;

int main(){   
	string s;
	cin>>s;
	vector<string> a;
	string str;
	getline(cin,str);
	getline(cin,str);
	
	string tp="";
	for(int i=0;i<str.size();i++){
		if(str[i]==' '){
			if(tp!=""){
				a.push_back(tp);
			}
			tp="";
		}
		else{
			tp+=str[i];
		}
	}
	if(tp!="") a.push_back(tp);
	
	for(int i=0;i<a.size();i++){
		int flag=0;
		if(s==a[i]){
			t++;
			if(t==1){
				for(int j=0;j<i;j++){
				  k+=a[j].size()+1;
			    }
			}
		}
		
		else if(s.size()==a[i].size()){
			string tem=a[i];
			for(int b=0;b<s.size();b++){
				if(s[b]==tem[b]||tem[b]-s[b]==32||tem[b]-s[b]==-32){
					if(b==a[i].size()-1){
						flag=1;
					}
				}
				else {
					break;
				}
			}
		}
		
		if(flag==1){
			t++;
			if(t==1){
				for(int j=0;j<i;j++){
				  k+=a[j].size()+1;
		    	}
			}
		}
	}
	
	
	if(t==0){
		cout<<-1<<endl;
	}
	else{
		cout<<t<<endl<<k;
	}
	
	return 0;
}
2021/3/22 15:59
加载中...