P13728. 确定进制

提交4 通过2
通过率50%
时间限制1000ms
内存限制256MiB

题目描述

题目背景

同一个数字串在不同进制下可以表示不同的数。例如数字串 42 在十三进制下表示 4×13+2=544\times13+2=54。因此,一个在十进制中不成立的乘法式,换一种进制后可能成立。

题目描述

输入三个只由十进制数字字符组成的数字串 p,q,rp,q,r。需要在 22 到 1616 之间寻找一个进制 BB,使得把这三个数字串都解释为 BB 进制数时,满足

p×q=r.p\times q=r.

一个数字串在 BB 进制下合法,当且仅当其中每一位数字都小于 BB。例如数字 9 不能出现在二进制到九进制的数中,但可以出现在十进制及更高进制的数中。

如果有多个进制满足条件,输出其中最小的进制;如果 22 到 1616 中没有任何可行进制,输出 00。

注意:输入中的 p,q,rp,q,r 是数字串的书写形式,不应先把它们固定当作十进制数参与乘法。

输入格式

一行三个数字串 p,q,rp,q,r,相邻两项之间用一个空格分隔。

输出格式

输出一个整数,表示满足乘法关系的最小进制 BB。不存在可行进制时输出 00。

输入样例 #1

6 9 42

输出样例 #1

13

样例说明 #1

在十三进制中,6 表示 66,9 表示 99,42 表示 4×13+2=544\times13+2=54,因此 6×9=546\times9=54 成立。所有更小的合法进制都不能满足等式,所以答案是 1313。

输入样例 #2

11 11 121

输出样例 #2

3

输入样例 #3

123 456 789

输出样例 #3

0

数据范围与约定

  • 2≤B≤162\le B\le16;
  • p,q,rp,q,r 只包含字符 0 到 9;
  • 按十进制书写读取时,1≤p,q,r≤1061\le p,q,r\le10^6;
  • 输入不使用 A 到 F 表示数码,即使候选进制大于十。