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 |
帮忙看看吧 总是tle#include<stdio.h> void swap(char a[],char b[]) { char c[9]; strcpy(c,a); strcpy(a,b); strcpy(b,c); c[8]=a[8]; a[8]=b[8]; b[8]=c[8]; } void trans(char a[]) { int i; for(i=0;i<8;i++) if(a[i]>='0'&&a[i]<='9'); else switch(a[i]) { case 'A': case 'B': case 'C': a[i]='2';break; case 'D': case 'E': case 'F': a[i]='3';break; case 'G': case 'H': case 'I': a[i]='4';break; case 'J': case 'K': case 'L': a[i]='5';break; case 'M': case 'N': case 'O': a[i]='6';break; case 'P': case 'R': case 'S': a[i]='7';break; case 'T': case 'U': case 'V': a[i]='8';break; case 'W': case 'X': case 'Y': a[i]='9';break; } } main() { char code[100000][9],c; int i,j,n,p=0; scanf("%d",&n); for(i=0;i<n;i++) code[i][8]=1,code[i][7]='\0'; for(i=0,j=0;i<n;) {scanf("%c",&c); if(c!='-'&&c!='\n') {code[i][j]=c; j++; if(j==7) j=0,i++;}} for(i=0;i<n;i++) trans(code[i]); for(i=1;i<n;i++) for(j=0;j<i;j++) {if(strcmp(code[i],code[j])==0) {code[j][8]++; break;}} for(j=0;code[j][8]==1;j++); do{for(i=j+1;i<n;i++) if(code[i][8]>1&&strcmp(code[j],code[i])>0) swap(code[j],code[i]); for(j=j+1;code[j][8]==1;j++);} while(j<n); for(i=0;i<n;i++) if(code[i][8]>1) {for(j=0;j<7;j++) {printf("%c",code[i][j]); if(j==2) printf("-");} printf(" %d\n",code[i][8]); p=1;} if(p==0) printf("No duplicates."); } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator