求助,B2141 ,65分
#include <bits/stdc++.h>
using namespace std;
long long p, q, p1, q1, r;
int convert(long long n, int m) {
long long x=0;
for (int i=1; i <= 6; i++) {
x+=(int(n / pow(10, i - 1)) % 10) * int(pow(m, i - 1));
}
return x;
}
int main() {
scanf("%d%d%d", &p, &q, &r);
int minn=0;
for (int i=1; i <= 6; i++) {
minn = max(minn, int(p / pow(10, i - 1)) % 10);
minn = max(minn, int(q / pow(10, i - 1)) % 10);
}
for (int i=minn+1; i <= 1000000; i++) {
if (convert(p, i) * convert(q, i) == convert(r, i)) {
cout << i;
return 0;
}
}
cout << 0;
return 0;
}