问题6824--基数

6824: 基数

[命题人 : ]
时间限制 : 1.000 sec  内存限制 : 256 MiB

题目描述

【题目描述】

奶牛贝西一直在当地的大学上计算机课,她一直很兴奋最近学习用不同的基数写数字。 回忆一下,以B为基数的数字有数位表示1、B、B^2、B^3。例如,在我们的熟悉的基数10编号系统,我们有代表1的数字,101001000等等。1234的数字序列,以10为基数,实际上是1(1000)+ 2(100)+ 3(10)+ 4(1)。以5为基数解释的数字1234的相同序列意味着1125+225+35+41),加起来就是基数194.贝西注意到,如果基数增加,数字也会增加由一系列数字表示,例如,以7为基数的1234表示大于基数6中的1234。当以B为基数写数字时,每个数字的范围可以从0B-1,因此例如在基数10中,每个数字都在0..9的范围内,并且在每个数字的基数为5,范围为0..4。完全可以考虑大于10的基数。计算机科学家通常使用16的基数(十六进制),其中字母A..F表示值的位数10..15。例如,十六进制的BEEF对应于114096+14256+1416+15,这等于基数10中的数字48879

贝西对使用远大于10的基数的概念很感兴趣。她取一个数字N,用两个不同的基数XY、 其中XY都在10..15000范围内。有趣的是,在在这两种情况下,她都会得到一个3位数的序列仅在1..9范围内。不幸的是,由于贝西的记忆不好,她现在已经忘记了NXY!仅给出两个3位数她写下的序列,请帮她算出XY这两个基底她用过的。

注意,由于XY的潜在大小,一个程序穷尽地搜索XY的每一个可能值(接近 15000 ^2种可能性!)将无法在时间限制内运行,因此 不会得到全额学分。

输入格式】:(whatbase.in)

输入一个整数K以下K每行一个测试用例。每个测试用例包括两个3位数字。第一个是以X为基数的数字N第二个是以Y为基数NNXY对于每个测试用例)。

输出格式】:(whatbase.out)

您的输出应该包含K行,每个测试用例对应一行。在每一个行,输出相关测试用例的两个数字XY, 用一个空格隔开。保证每种情况都有唯一的解决方案 存在。 

样例输入】:

1

419 792  

样例输出:

47 35

解决方案指出:

这个数是889247为基数的419。以35基数,它是792.

 

来源/分类