#include <stdio.h> #include <string.h> #include <ctype.h> int main() { int n,step=0,num[3000]={0},i,b_num[3000]={0},len,r,tem,cheak; char m[100]; scanf("%d%s",&n,m); len=strlen(m); for (i=0;i<len;i++) { if (isdigit(m[i])) num[i]=m[i]-'0'; else num[i]=toupper(m[i])-55; } do{ cheak=0; for (i=0;i<len/2;i++) { if (num[i]!=num[len-i-1]) { cheak=1; break; } } if (cheak==0) break; for (i=0;i<len;i++) b_num[i]=num[len-i-1]; for (r=0,i=0;i<=len+2;i++) { tem=(b_num[i]+num[i]+r)%n; r=(b_num[i]+num[i]+r)/n; num[i]=tem; } if (num[len]) len++; step++; }while (step<=30); if (step>30) printf("Impossible!\n"); else printf("STEP=%d\n",step); return 0; }
解题思路:
注意事项:
参考代码:
0.0分
0 人评分
WU-拆分位数 (C++代码)浏览:819 |
printf基础练习2 (C语言代码)浏览:690 |
三角形 (C++代码)递归(存在大量重复计算,容易出现时间超限)浏览:836 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:583 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:569 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:438 |
DNA (C语言代码)浏览:798 |
永远的丰碑 (C语言代码)浏览:608 |
理财计划 (C语言代码)浏览:494 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:469 |