求助
查看原帖
求助
623089
ZZ_WYZ楼主2024/7/1 17:33

怎么办。。。。。 为什么样例过了,题却挂了

#include<bits/stdc++.h>
using namespace std;
bool sim(string a,string b){
	int na=a.length();
	int nb=b.length();
	int ji=0;
	if(na==nb){
		int cnt=0;
		for(int i=0;i<na;i++){
			if(a[i]!=b[i])cnt++;
			if(cnt<=1)ji=1;
		}
	}
	int cnt=0,jii=0;
	if(na==nb+1){
		for(int i=0;i<na;i++){
			if(a[i]!=b[cnt]){
				cnt--;
				jii++;
			}
			cnt++;
		}
		if(jii==1){
			ji=1;
		}
	}
	if(na==nb-1){
		for(int i=0;i<nb;i++){
			if(a[cnt]!=b[i]){
				cnt--;
				jii++;
			}
			cnt++;
		}
		if(jii==1){
			ji=1;
		}
	}//zengjia
	if(ji==1)return 1;
	else return 0;
}
int main(){
	string a[123],b[123];
	int n;
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i]>>b[i];
	}
	for(int i=0;i<n;i++){
		if(sim(a[i],b[i]))cout<<"similar"<<endl;
		else cout<<"not similar"<<endl;
	}
	return 0;
}

2024/7/1 17:33
加载中...