#include<bits/stdc++.h>
using namespace std;
bool relate(string a,string b){
for(int i=0;i<a.size();i++){
int d=abs(a[i]-b[i]);
if(d!=0&&d!=32)
return 0;
}
return 1;
}
bool reverse(string a,string b){
for(int i=0;i<a.size();i++){
int d=abs(a[i]-b[b.size()-1-i]);
if(d!=0&&d!=32)
return 0;
}
return 1;
}
int main(){
string a,b;
cin>>a>>b;
if(a.size()!=b.size()){
cout<<1<<endl;
}
else if(a==b){
cout<<2<<endl;
}
else if(relate(a,b)){
cout<<3<<endl;
}
else if(reverse(a,b)){
cout<<4<<endl;
}
else
cout<<5<<endl;
return 0;
}
我的代码
#include<bits/stdc++.h>
using namespace std;
int main() {
char a[10];
char b[10];
int as,bs;
gets(a);
gets(b);
//cin>>a>>b; (如此输入也可行)
as=strlen(a);
bs=strlen(b);
if(as!=bs)
cout<<"1"<<endl;
else {
int d=0;
int i;
for(i=0; i<as; i++)
if(a[i]!=b[i])
break;
if(i==as) {
cout<<"2"<<endl;
d=1;
}
if(d==0) {
for(i=0; i<as; i++)
if(a[i]!=b[i]&&(abs(a[i]-b[i])!=32))
break;
if(i==as) {
cout<<"3"<<endl;
d=1;
}
}
if(d==0) {
int j=as-1;
for(i=0; i<as; i++) {
if(a[i]!=b[j]&&(abs(a[i]-b[j])!=32))
break;
j--;
}
if(i==as) {
cout<<"4"<<endl;
d=1;
}
}
if(d==0)
cout<<"5"<<endl;
}
return 0;
}