#include<stdio.h>
#include<stdlib.h>
int cmp1(const void* ta,const void* tb){
int* a=(int*)ta;
int* b=(int*)tb;
return *b-*a;
}
int cmp2(const void* ta,const void* tb){
int* a=(int*)ta;
int* b=(int*)tb;
return *a-*b;
}
int main(){
int i,j,n;
int last=-1,big,small,ans;
int a[4],b[4];
scanf("%d",&n);
while(1){
for(i=0;i<4;i++){
a[i]=b[i]=n%10;
n=n/10;
}
qsort(a,4,sizeof(int),cmp1);
qsort(b,4,sizeof(int),cmp2);
big=a[0]*1000+a[1]*100+a[2]*10+a[3];
small=b[0]*1000+b[1]*100+b[2]*10+b[3];
ans=big-small;
if(ans==last)
break;
else {
printf("%04d - %04d = %04d\n",big,small,ans);
last=ans;
n=ans;
}
}
return 0;
}
浙大PAT 1069题 1069. The Black Hole of Numbers
最新推荐文章于 2022-08-20 13:39:44 发布