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 |
为什么Output Limit Exceed??简直不能忍!!高手给看一下输出行吗?谢了。#include <stdio.h> int fig[4]; void arrange(int num) { int i,j,temp; fig[0]=num/1000; fig[1]=(num-fig[0]*1000)/100; fig[2]=(num-fig[0]*1000-fig[1]*100)/10; fig[3]=num-fig[0]*1000-fig[1]*100-fig[2]*10; for(i=0;i<=3;i++) { for(j=1;j<=3-i;j++) { if(fig[j]<fig[j-1]) { temp=fig[j]; fig[j]=fig[j-1]; fig[j-1]=temp; } } } } int biggest(int num) { int big; arrange(num); if(num>=100&&num<=999) big=fig[3]*100+fig[2]*10+fig[1]; else if(num>=10&&num<=99) big=fig[3]*10+fig[2]; else if(num>=1&&num<=9) big=fig[3]; else big=fig[3]*1000+fig[2]*100+fig[1]*10+fig[0]; return big; } int smallest(int num) { int small; arrange(num); small=fig[0]*1000+fig[1]*100+fig[2]*10+fig[3]; return small; } void main() { int n[300],big[300],small[300],flag[300],i,temp[300]; for(i=0;;i++) { scanf("%d",&n[i]); temp[i]=n[i]; if(n[i]==-1) break; } for(i=0;;i++) { if(n[i]==-1) break; if(n[i]%1111==0) { printf("N=%d:\n",temp[i]); printf("No!!\n"); } else { printf("N=%d:\n",temp[i]); for(flag[i]=1;;flag[i]++) { big[i]=biggest(n[i]); small[i]=smallest(n[i]); n[i]=big[i]-small[i]; printf("%d-%d=%d\n",big[i],small[i],n[i]); if(n[i]==6174||n[i]==0) break; } printf("Ok!! %d times\n",flag[i]); } } } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator