内存限制:128 MB
时间限制:1.000 S
标准输入输出
题目类型:传统
评测方式:文本比较
上传者:
提交:8
通过:3
若一个数(首位不为零)从左向右读与从右向左读都是一样,我们就将其称之为回文数。例如:给定一个十进制数56,将56加65(即把56从右向左读),得到的121是一个回文数。又如,对于十进制数87:
STEP1:87+78=165 STEP2:165+561=726
STEP3:726+627=1353 STEP4:1353+3531=4884
在这里的一步是指进行了一次N进制的加法,上例最少用了4步得到回文数4884。
写一个程序,给定一个N(2≤N≤10,N=16)进制数m,m的位数上限为20。求最少经过几步可以得到回文数。如果在30步以内(包括30步)不可能得到回文数,则输出“impossible”
输入格式:1行,包含以空格分隔的两个数,分别表示N和m。
输出格式:1行,仅一个数,表示步数。若不能得到回文数,输出 impossible。
温习竖式加法
进制即逢几进一
如16进制则是逢16进一,它的基本数字是0 1 2 3 4 5 6 7 8 9 a b c d e f,分别对应值0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
提交时,把while(getchar())改为cin,才能避免运行时错误