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 |
请高手帮忙看看,为什么WA啊!!000-0000都试过了,没有问题的…… 不胜感激!!!!!!!!!!!!!!#include <stdio.h> #include <math.h> #include <search.h> int cmp(const void*a, const void*b){ int i = *(int*)a, j=*(int*)b; return ((i>j)?1:(i<j)?-1:0); } int mt(int x){ int x1,out; out=1; for (x1=1;x1<=x;x1++){ out=out*10; } return(out); } void main(){ int n,i,k,u,t; int i0,k0; char tel[20]; int a[100200],r[100200]; scanf("%d",&n); for (i=1;i<=n;i++){ u=0;k=-1; scanf("%s",tel); a[i]=0; do{ u=u+1; k=k+1; do{ if (tel[k]=='-') k=k+1; } while (tel[k]=='-'); if (tel[k]=='A'||tel[k]=='B'||tel[k]=='C') t=2; else if (tel[k]=='D'||tel[k]=='E'||tel[k]=='F') t=3; else if (tel[k]=='G'||tel[k]=='H'||tel[k]=='I') t=4; else if (tel[k]=='J'||tel[k]=='K'||tel[k]=='L') t=5; else if (tel[k]=='M'||tel[k]=='N'||tel[k]=='O') t=6; else if (tel[k]=='P'||tel[k]=='R'||tel[k]=='S') t=7; else if (tel[k]=='T'||tel[k]=='U'||tel[k]=='V') t=8; else if (tel[k]=='W'||tel[k]=='X'||tel[k]=='Y') t=9; else if (tel[k]=='a'||tel[k]=='b'||tel[k]=='c') t=2; else if (tel[k]=='d'||tel[k]=='e'||tel[k]=='f') t=3; else if (tel[k]=='g'||tel[k]=='h'||tel[k]=='i') t=4; else if (tel[k]=='j'||tel[k]=='k'||tel[k]=='l') t=5; else if (tel[k]=='m'||tel[k]=='n'||tel[k]=='o') t=6; else if (tel[k]=='p'||tel[k]=='r'||tel[k]=='s') t=7; else if (tel[k]=='t'||tel[k]=='u'||tel[k]=='v') t=8; else if (tel[k]=='w'||tel[k]=='x'||tel[k]=='y') t=9; else if (tel[k]=='1') t=1; else if (tel[k]=='2') t=2; else if (tel[k]=='3') t=3; else if (tel[k]=='4') t=4; else if (tel[k]=='5') t=5; else if (tel[k]=='6') t=6; else if (tel[k]=='7') t=7; else if (tel[k]=='8') t=8; else if (tel[k]=='9') t=9; else if (tel[k]=='0') t=0; a[i]=a[i]+(t*(mt(7-u))); } while (u<7); } qsort(a,n+1,sizeof(a[0]),cmp); /*对n个电话排序*/ k0=0; for (i0=1;i0<=n;i0++){ if (a[i0]==a[i0-1]&&a[i0]==a[i0+1]) r[k0]=r[k0]+1; else if (a[i0]==a[i0-1]&&a[i0]!=a[i0+1]){ r[k0]=r[k0]+1; for(i=7;i>=1;i--){ if (i==4) printf("-"); printf("%d",a[i0]/(mt(i-1))); a[i0]=a[i0]-(a[i0]/(mt(i-1)))*mt(i-1); } printf(" %d\n",r[k0]); } else{ if (a[i0]==a[i0+1]){ k0=k0+1; r[k0]=1; } } } if (k0==0) printf("No duplicates.\n"); } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator