#includeint max_num(int n){ int max=0; while(n) { int k=n%10; if(k>max) max=k; n/=10; } return max;}int getX_Y(int n,int p){ int k=1,r; int sum=0; while(n) { r=n%10; n/=10; sum+=r*k; k*=p; } return sum;}int main(){ int t; int a,b,c; scanf("%d%d%d",&a,&b,&c); int amax,bmax; amax=max_num(a); bmax=max_num(b); if(bmax>amax) amax=bmax; bmax=max_num(c); if(bmax>amax) amax=bmax; int da,db,dc;//10进制的a、b for(amax++; amax<=16; amax++) { da=getX_Y(a,amax); db=getX_Y(b,amax); dc=getX_Y(c,amax); if(da*db==dc) break; } if(amax>16) amax=0; printf("%d\n",amax); return 0;}