#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//no strrev in pat's compiler
void mystrrev(char* str){
char tmp[25];
int i,j;
strcpy(tmp,str);
j=strlen(str);
for(i=0;tmp[i]!='\0';i++){
j--;
str[j]=tmp[i];
}
}
int main(){
char str[25],db[25];
int a[10],b[10];
int i,j;
scanf("%s",str);
mystrrev(str);
int nxt=0;
for(i=0;str[i]!='\0';i++){
db[i]=((str[i]-'0')*2+nxt)%10+'0';
nxt=((str[i]-'0')*2)/10;
}
if(nxt!=0){
db[i]='0'+nxt;
db[i+1]='\0';
}
else db[i]='\0';
mystrrev(db);
for(i=0;i<10;i++){
a[i]=0;
b[i]=0;
}
for(i=0;str[i]!='\0';i++){
a[str[i]-'0']++;
}
for(i=0;db[i]!='\0';i++){
b[db[i]-'0']++;
}
for(i=0;i<10;i++){
if(a[i]!=b[i]) break;
}
if(i==10) printf("Yes\n");
else printf("No\n");
printf("%s\n",db);
system("pause");
return 0;
}
浙大PAT 1023题 1023. Have Fun with Numbers
最新推荐文章于 2022-07-27 17:45:11 发布