#include<bits/stdc++.h>
using namespace std;
int jin[6]={10,11,12,13,14,15};
inline int Min(string p, string q, string r) {
char MIN = *max_element(p.begin(), p.end());
MIN = max(MIN, *max_element(q.begin(), q.end()));
MIN = max(MIN, *max_element(r.begin(), r.end()));
return (int)MIN - '0' + 1;
}
long long huan(string n,int i){
long long ans=0,q=1;
while(n.length()!=0){
if(n[i]<='9') ans+=q*(int)(n[n.length()-1]-'0');
else ans+=q*jin[(int)(n[n.length()-1]-65)];
q*=i;
n=n.substr(0,n.length()-1);
}
return ans;
}
short jinzhi(string x,string y,string z){
for(int i=Min(x,y,z);i<=16;i++){
long long a1=huan(x,i);
long long a2=huan(y,i);
long long a3=huan(z,i);
if(a1*a2==a3){
return i;
}
}
return 0;
}
int main(){
string a,b,c;
cin>>a>>b>>c;
cout<<jinzhi(a,b,c);
return 0;
}
哪错了?
?