1079 延迟的回文数 (20分)
输入样例 1:
97152
输出样例 1:
97152 + 25179 = 122331
122331 + 133221 = 255552
255552 is a palindromic number.
输入样例 2:
196
输出样例 2:
196 + 691 = 887 887 + 788 = 1675 1675 + 5761 = 7436 7436 + 6347 = 13783 13783 + 38731 = 52514 52514 + 41525 = 94039 94039 + 93049 = 187088 187088 + 880781 = 1067869 1067869 + 9687601 = 10755470 10755470 + 07455701 = 18211171 Not found in 10 iterations.
思路:
1.用字符串输入,倒置并进行加法计算,要注意倒置后的加数若最高位为0如实输出即可
2.测试点234不通过是因为要对初始输入进行判断,若初始输入为回文数,则直接输出,不用加
首次通过代码:
1 #include<stdio.h> 2 #include<string.h> 3 4 int judge(char a[],int num){ 5 for(int i=0;i<num/2;i++){ 6 if(a[i]!=a[num-1-i]) { 7 return 0; 8 } 9 } 10 printf("%s is a palindromic number.",a); 11 return 1; 12 } 13 14 int main(){ 15 char a[1001]; 16 char b[1001]; 17 scanf("%s",a); 18 int len=strlen(a); 19 if(judge(a,len)) return 0; 20 for(int i=0;i<10;i++){ 21 for(int j=0;j<len;j++){ 22 b[len-1-j]=a[j]; 23 } 24 b[len]='