Accept: 218 Submit: 367
Time Limit: 1000 mSec Memory Limit : 32768 KB
Problem Description
在猪的世界里有一种数叫猪数,猪是这么定义猪数的:给定一个进制B(2<=B<=20,B用十进制表示),在这个进制下,这个数的平方从左向右念和从右像左念都一样,用‘A’,‘B’……表示10,11等等。
例如:B=10时,121就是一个猪数,因为121的平方14641满足条件。
你的任务是编写一个程序,求出所有大于等于1小于等于300的猪数。
Input
输入包含多组测试数据,请处理到EOF结束。
每组测试数据,由一行组成,为一个单独的整数B(B用十进制表示)。
Output
对每组数据输出:每行两个数字,第二个数是第一个数的平方,且第一个数是猪数。(注意:这两个数都应该在B那个进制下)
Sample Input
10 15
Sample Output
1 1 2 4 3 9 11 121 22 484 26 676 101 10201 111 12321 121 14641 202 40804 212 44944 264 69696 2 4 3 9 4 11 8 44 C 99 11 121 14 191 22 484 29 6B6 44 1331 51 1AA1 88 4CC4 99 6226 101 10201 111 12321 121 14641 131 16B61
//题目的样例输出应该是有错的, B=15时, 最前面还有一行1 1
//一次就AC了,有点意外...
//基本的思想就是10进制转B进制(2<=B<=20), 判断该10进制数的平方在B进制下是否对称(猪数).....