题目描述
<p><font size="3" face="Times New Roman">若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。 <br /> 例如:给定一个10进制数56,将56加65(即把56从右向左读),得到121是一个回文数。 <br /> 又如:对于10进制数87: <br /> STEP1:87+78 = 165 STEP2:165+561 = 726 <br /> STEP3:726+627 = 1353 STEP4:1353+3531 = 4884 <br /> 在这里的一步是指进行了一次N进制的加法,上例最少用了4步得到回文数4884。 <br /> 写一个程序,给定一个N(2<=N<=16)进制数M,求最少经过几步可以得到回文数。如果在30步以内(包含30步)不可能得到回文数,则输出“Impossible!” </font></p>
输入格式
<p><font size="3" face="Times New Roman">共两行 <br /> 第一行为进制数N(2<=N<=16) <br /> 第二行为N进制数M(0<=M<=maxlongint) </font></p>
输出格式
<p><font size="3" face="Times New Roman">共一行,为“STEP=经过的步数”或“Impossible!”</font></p>
样例
样例输入 1
9
87
样例输出 1
STEP=6
提交代码
请先登录后提交
🤖 AI 解题助手
DeepSeek
就绪