标签:enter nbsp std c语言 inf 时间 des log logs
1 #include<stdio.h> 2 #include<string.h> 3 #include<stdlib.h> 4 int ans=0; 5 void sheng(int a[]){ 6 for(int i=0;i<4-1;i++){ 7 for(int j=0;j<4-i-1;j++){ 8 if(a[j]>a[j+1]){ 9 int t = a[j]; 10 a[j] = a[j+1]; 11 a[j+1] = t; 12 } 13 } 14 } 15 } 16 void jiang(int a[]){ 17 for(int i=0;i<4-1;i++){ 18 for(int j=0;j<4-i-1;j++){ 19 if(a[j]<a[j+1]){ 20 int t = a[j]; 21 a[j] = a[j+1]; 22 a[j+1] = t; 23 } 24 } 25 } 26 } 27 int tomax(int num){ 28 int a[4]={0}; 29 a[0] = num/1000%10;//千位 30 a[1] = num/100%10;//百位 31 a[2] = num/10%10;//十位 32 a[3] = num%10;//个位 33 jiang(a) ; 34 return a[0]*1000+a[1]*100+a[2]*10+a[3]; 35 } 36 int tomin(int num){ 37 int a[4]={0}; 38 a[0] = num/1000%10;//千位 39 a[1] = num/100%10;//百位 40 a[2] = num/10%10;//十位 41 a[3] = num%10;//个位 42 sheng(a) ; 43 return a[0]*1000+a[1]*100+a[2]*10+a[3]; 44 } 45 void dfs(int num){ 46 if(num==6174){ 47 return; 48 } 49 num=tomax(num)-tomin(num); 50 ans++; 51 dfs(num); 52 } 53 int main(){ 54 int num; 55 scanf("%d",&num); 56 dfs(num); 57 printf("%d",ans); 58 return 0; 59 }
标签:enter nbsp std c语言 inf 时间 des log logs
原文地址:http://www.cnblogs.com/panweiwei/p/6670544.html