1 条题解

  • 0
    @ 2025-8-7 18:31:29

    Creeper?

    #include<bits/stdc++.h>
    using namespace std;
    int n;//定义变量
    bool check(string &s1,string &s2){//引用传递
    	if(s1.size()==s2.size()){//项数相等
    		if(s1==s2) return 1;//完全相等(你过关!)
    		int s=0; //记录需要改变的字符的次数
    		for(int i=0;i<s1.size();i++){
    			if(s1[i]!=s2[i]) s++;//累加
    		}
    		if(s==1) return 1;//只改变一个字符(你过关!)
    		else return 0;//该罚!
    	}
    	if(s1.size()<s2.size()) return check(s2,s1);//看下面
    	int cnt=0;//记录要加入的字符的数量
    	for(int i=0,j=0;i<s1.size();i++){//累加
    		if(s1[i]==s2[j]) j++;//累加器
    		else cnt++;//记录需要增加的字符
    	}
    	if(cnt==1) return 1;//只增加一个字符(你过关!)
    	else return 0;//该罚
    }
    int main(){
    	cin>>n;//输入
    	for(int i=1;i<=n;i++){//循环
    		string s1,s2;
    		cin>>s1>>s2;//输入
    		if(check(s1,s2)) puts("similar");
    		else puts("not similar");
    		//检测
    	}
    	return 0;//完美
    }
    • 1

    信息

    ID
    1336
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    1
    已通过
    1
    上传者