简小淼 level
获赞
0
粉丝
0
关注
0
看过 TA
2
河北工程大学
2028
算法工程师
IP属地:河北
暂未填写个人简介
私信
关注
# https://www.nowcoder.com/share/jump/1408176281734265684977#include<stdio.h>#include<math.h>#include<stdlib.h>#include<string.h>int ishui(int x){int Arr[100];int i = 0;while (x != 0){Arr[i] = x % 10;x = x / 10;i++;}int len = i;for (int j = 0; j < len / 2; j++){if (Arr[j] != Arr[len - j - 1]){return 0;}}return 1;}int cnt=0;int jinzhi(char x[],int xx){int i,len=strlen(x);int sum=0;for(i=len-1;i>=0;i--){if(x[i]=='A'||x[i]=='B'||x[i]=='C'||x[i]=='D'||x[i]=='E'||x[i]=='F'){sum=sum+(x[i]-'A'+10)*(int)(pow(xx,len-1-i)+0.5);// printf("sum=%d   %d\n",sum,len-1-i);}else{sum=sum+(x[i]-'0')*(int)(pow(xx,len-1-i)+0.5);// printf("sum=%d   %d\n",sum,len-1-i);}}return sum;}int step=1;int leijia(int x){int xxx;int n=x,m=0;while(n!=0){m=n%10+10*m;n=n/10;}xxx=x+m;printf("traverse=%d\n",m);printf("xxx=%d\n",xxx);if(step>30)return 0;if(ishui(xxx)){return 1;}else{step++;return leijia(xxx);}}int main(){int n,y;char yy[20];scanf("%d",&n);scanf("%s",yy);y=jinzhi(yy,n);printf("y=%d\n",y);if(leijia(y))printf("STEP=%d\n",step);elseprintf("impossible\n");return 0;}输入:210011输出:y=19traverse=91xxx=110traverse=11xxx=121STEP=2我感觉我的流程没有问题啊,为什么step输出是4啊?
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务