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 |
Re:好长的代码啊In Reply To:好长的代码啊 Posted by:xfxyjwf at 2005-07-06 11:44:48 > Source > > Problem Id:1002 User Id:xfxyjwf > Memory:412K Time:249MS > Language:C++ Result:Accepted > > Source > > #include <stdio.h> > #include <stdlib.h> > int d[26] = { 2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9,9 }; > int *a; > int n; > int cmpA(const void *a,const void *b) > { > return *(const int *)a-*(const int *)b; > } > int main () > { > int i,j; > bool haveDuplicates; > char x[100]; > scanf("%d",&n); > a=new int[n+1]; > scanf("\n"); > for(j=1;j<=n;j++) > { > gets(x); > a[j]=0; > for(i=0;x[i]!='\0';i++) > { > if(x[i]>='A' && x[i]<='Z') > { > a[j]=a[j]*10+d[x[i]-'A']; > continue; > } > if(x[i]>='0' && x[i]<='9') > { > a[j]=a[j]*10+x[i]-'0'; > continue; > } > } > } > haveDuplicates=false; > qsort(&a[1],n,sizeof(a[1]),cmpA); > j=1; > for(i=2;i<=n;i++) > { > if(a[i]==a[i-1]) > j++; > else > { > if(j>1) > { > haveDuplicates=true; > printf("%03d-%04d %d\n",a[i-1]/10000,a[i-1]%10000,j); > j=1; > } > } > } > if(j>1) > printf("%03d-%04d %d\n",a[n]/10000,a[n]%10000,j); > else > if(!haveDuplicates) > printf("No duplicates.\n"); > delete []a; > return 0; > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator