Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
WHY WA#include<stdio.h> #include<string.h> int num; int power(int t,int k) { int sum=1; for(int i=1;i<=k;i++) sum*=t; return sum; } int Crabic(int n,int k) { int max=0,min=0; int a[4]; int temp; int i,j; for(i=0;i<k;i++) { a[i]=n%10; n=n/10; } for(i=0;i<k;i++) for(j=i+1;j<k;j++) if(a[i]>a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } num++; for(j=k-1;j>=0;j--) { max+=power(10,j)*a[j]; min+=power(10,k-j-1)*a[j]; } printf("%d-%d=%d\n",max,min,max-min); if(max-min==0||max-min==6174) { printf("Ok!! %d times\n",num); //exit(0); } temp=max-min; return temp; } int main() { int n; int a[4]; while(scanf("%d",&n)!=EOF) { if(n==-1) break; int temp=n; for(int i=0;i<4;i++) { a[i]=temp%10; temp=temp/10; } num=0; printf("N=%d:\n",a[3]*1000+a[2]*100+a[1]*10+a[0]); if(n%1111==0||n>9999||n<1000) { printf("No!!\n"); continue; } while(1) { if(n>=1000) n=Crabic(n,4); else if(n>=100) n=Crabic(n,3); else if(n>=10) n=Crabic(n,2); else n=Crabic(n,1); if(n==0||n==6174) break; } } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator