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 |
搞了两天………………有没有最bt的数据啊?我的怎么还wa啊?! 高手给点建议? #include<iostream.h> #include<stdio.h> #include<stdlib.h> int main() { int n,i; void display(char*,int); //cin>>n; n=1;//共有六祖数据; char**a=new char*[n]; for(i=0;i<n;i++) a[i]=new char[7]; int *b=new int[n]; for(i=0;i<n;i++) scanf("%s %d",a[i],&b[i]); for(i=0;i<n;i++) display(a[i],b[i]); return 0; } void display(char *a,int n) { int m,i,k=10,q,t=0,d=0,head,last,flag=0; for(i=0;i<6;i++) { if(a[i]!='.') t=t*10+a[i]-'0'; else k=i; }//是不是一定会有小数点? long int*j=new long int[5*n]; if(k==10) {for(i=0;i<5*n;i++)j[i]=0; j[0]=1; for(m=0;m<n;m++) { q=0; for(i=0;i<5*n;i++) {j[i]=j[i]*t+q;q=j[i]/10;j[i]=j[i]%10;} } for(i=5*n-1;i>=0;i--) if(j[i]!=0){flag=1;break;} head=i; if(flag==0){cout<<'0'<<endl;return;} {for(i=head;i>=0;i--) printf("%ld",j[i]); cout<<endl; return;}} for(i=0;i<5*n;i++)j[i]=0; j[0]=1; for(m=0;m<n;m++) { q=0; for(i=0;i<5*n;i++) {j[i]=j[i]*t+q;q=j[i]/10;j[i]=j[i]%10;} } for(i=5*n-1;i>=0;i--) if(j[i]!=0){flag=1;break;}; head=i; if(flag==0){cout<<'0'<<endl;return;} for(i=0;i<n*5;i++) if(j[i]!=0)break; last=i; if(last>=n*(5-k)) {for(i=head;i>=n*(5-k);i--) printf("%ld",j[i]); cout<<endl; return;} for(i=head;i>=n*(5-k);i--)printf("%ld",j[i]); printf("."); for(i=n*5-n*k-1;i>=last;i--)printf("%ld",j[i]); cout<<endl; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator