菜就该有菜的样子,哈哈
#include <iostream>
#include <cstring>
#include <algorithm>
#include <unordered_set>
#define cs cin.tie(nullptr)->sync_with_stdio(false);
using namespace std;
int Atoi(string s,int radix)
{
int ans=0;
for(int i=0;i<s.size();i++)
{
char t=s[i];
if(t>='0'&&t<='9') ans=ans*radix+t-'0';
else ans=ans*radix+t-'a'+10;
}
return ans;
}
int main()
{
cs;
unordered_set<int>mk;
string s ;
int res = 0;
cin >> s ;
for(int i = 0 ; i < s.size() ; i ++ ){
if(s[i] == '1'){
s[i] = '0' ;
mk.insert(Atoi(s,2));
s[i] = '1';
}else if(s[i] == '0'){
s[i] = '1';
mk.insert(Atoi(s,2));
s[i] = '0';
}
}
string s2 ;
cin >> s2 ;
for(int i = 0 ; i < s2.size() ; i ++ ){
if(s2[i] == '0'){
s2[i] = '1' ;
if(mk.count(Atoi(s2,3))){
res = Atoi(s2,3) ;
break;
}
s2[i] = '2' ;
if(mk.count(Atoi(s2,3))){
res = Atoi(s2,3) ;
break;
}
s2[i] = '0';
}else if(s2[i] == '1'){
s2[i] = '0' ;
if(mk.count(Atoi(s2,3))){
res = Atoi(s2,3) ;
break;
}
s2[i] = '2' ;
if(mk.count(Atoi(s2,3))){
res = Atoi(s2,3) ;
break;
}
s2[i] = '1';
}else if(s2[i] == '2'){
s2[i] = '1' ;
if(mk.count(Atoi(s2,3))){
res = Atoi(s2,3) ;
break;
}
s2[i] = '0' ;
if(mk.count(Atoi(s2,3))){
res = Atoi(s2,3) ;
break;
}
s2[i] = '2';
}
}
cout << res ;
}