改完解决了上一篇大部分问题,但是过不了
查看原帖
改完解决了上一篇大部分问题,但是过不了
970434
heheya楼主2024/6/13 13:23
#include<bits/stdc++.h>
using namespace std;
int main(){
    int a,qq=0,w=0;
    cin>>a;
    for(int i=0;i<a;i++){
        string b,c;
        cin>>b>>c;
		int sd;
        sd=c.size()-b.size();
        if(sd<0&&sd<=-2||sd>0&&sd>=2){
        	cout<<"not similar"<<endl;
        	continue;
		}
		for(int j=0;j<min(b.size(),c.size());j++){
			if(min(b.size(),c.size())==b.size()){
				if(b[j]!=c[j]){
					w=1;
				}
				else if(b[j]==c[j]){
					b[j]='1';
					c[j]='2';
					qq++;
				}
				else if(b[j]==c[j+1]){
					b[j]='1';
					c[j+1]='2';
					qq++;
				}
			}
			if(min(b.size(),c.size())==c.size()){
				if(b[j]==c[j]){
					b[j]='1';
					c[j]='2';
					qq++;
				}
				else if(b[j+1]==c[j]){
					b[j+1]='1';
					c[j]='2';
					qq++;
				}
			}
		}
		if(b.size()==c.size()&&qq!=b.size()&&w!=1){
			cout<<"not similar"<<endl;
			continue;
		}
		if(qq==max(b.size(),c.size())||qq==max(b.size(),c.size())+1||qq==max(b.size(),c.size())-1){
			cout<<"similar"<<endl;
		}
		else cout<<"not similar"<<endl;
		qq=0;
		w=0;
    }
}
2024/6/13 13:23
加载中...