4 AC,6 WA
#include<bits/stdc++.h>
using namespace std;
int len_a,len_b;
string s,s1;
int ans=0,ans1=0;
map<int,bool> mp;
int main(){
cin>>s>>s1;
len_a=s.length();len_b=s1.length();
for(int i=0;i<len_a;i++)ans=ans*2+s[i]-'0';
for(int i=0;i<len_b;i++)ans1=ans1*3+s1[i]-'0';
int tmp=1;
for(int i=len_b-1;i>=0;i--){
if(s1[i]=='0')
mp[ans1+tmp]=mp[ans1+tmp+tmp]=1;
else if(s1[i]=='1')
mp[ans1-tmp]=mp[ans1+tmp]=1;
else
mp[ans1-tmp-tmp]=mp[ans1-tmp]=1;
tmp*=3;
}
tmp=1;
for(int i=len_a-1;i>=0;i--){
if(s[i]=='0')
if(mp[ans+tmp]){
cout<<ans+tmp;
return 0;
}
else
if(mp[ans-tmp]){
cout<<ans-tmp;
return 0;
}
tmp*=2;
}
}