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 |
GS们怎么样改才能让我的这个程序运行时间少一点????#include<stdio.h> #define MAX 1000 void main() { char a[6]; char b[MAX]={0}; int n,num,i,j,k,t ,nu,s,numb,end,top; scanf("%s %d",a,&n); for(i=5;a[i]!='.';i--); num=i; for(i=num-1;i>=0;i--) a[i+1]=a[i]; for(i=1;i<=5;i++) a[i]=a[i]-48; for(i=1;i<=5;i++) b[MAX-6+i]=a[i]; for(nu=2;nu<=n;nu++) { s=MAX-1; for(i=5;i>=1;i++) { k=s--; for(j=MAX-1;j>=1;j--,k--) { b[k]=b[j]*a[i]; t=k; while(b[t]/10!=0) { b[t-1]=b[t-1]+b[t]/10; t--; } t=t+1; while(t<=k) { b[t]%=10; t--; } } } } for(i=1;i<=n-1;i++) num=num*2; numb=MAX-1-num; for(i=numb;i<=MAX-1;i++) b[i+1]=b[i]; b[numb]='.'; b[numb]-=48; for(i=MAX-1;b[i]==0;i--); end=i; for(i=0;b[i]==0;i++); top=i; for(i=top;i<=end;i++) printf("%c",b[i]+48); } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator