若一个数(首位不为零)从左向右读与从右向左读都是一样,我们就将其称之为回文数。例如:给定一个 10 进制数 56,将 56 加 65(即把 56 从右向左读),得到 121 是一个回文数。又如,对于 10 进制数 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,求最少经过几步可以得到回文数。如果在 30 步以内(包含 30 步)不可能得到回文数,则输出 “Impossible”。
第1行,给定一个 N(2<N≤10 或 N=16)表示进制; 第2行,一个 N 进制数 M。
最少几步。如果在 30 步以内(包含 30 步)不可能得到回文数,则输出 “Impossible”。
9 87
6