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#include<iostream> #include<string.h> using namespace std; struct In { char str[100]; }s[1000000]; int res[1000000][2]; int cmp(const void *a,const void *b) { return strcmp((*(In *)a).str,(*(In *)b).str); } void pan(char &a) { if(a=='A'||a=='B'||a=='c') a='2'; if(a=='D'||a=='E'||a=='F') a='3'; if(a=='G'||a=='H'||a=='I') a='4'; if(a=='J'||a=='K'||a=='L') a='5'; if(a=='M'||a=='N'||a=='O') a='6'; if(a=='P'||a=='R'||a=='S') a='7'; if(a=='T'||a=='U'||a=='V') a='8'; if(a=='W'||a=='X'||a=='Y') a='9'; } void change(In *a,int n) { for(int i=0;i<n;i++) { for(unsigned int j=0;j<strlen(a[i].str);j++) { pan(a[i].str[j]); if(a[i].str[j]=='-'||a[i].str[j]>='A'&&a[i].str[j]<='Y') { for(unsigned int k=j;k<strlen(a[i].str);k++) a[i].str[k]=a[i].str[k+1]; j--; } } } } int main() { int n=0,count=0,flag=0,i=0,j=0; unsigned int k=0,f=0; cin>>n; for(i=0;i<n;i++) cin>>s[i].str; change(s,n); qsort(s,n,sizeof(s[0]),cmp); for(i=0;i<n;i++) { if(strcmp(s[i].str,s[i+1].str)==0) { res[count][0]=i; res[count][1]++; flag=1; } else { if(flag==1) res[count][1]++; count++; flag=0; } } if(count==n) cout<<"No duplicates."<<endl; else { for(i=0;i<count;i++) { flag=0; if(res[i][0]||res[i][0]==0&&i==0) for(f=0;f<strlen(s[res[i][0]].str);f++) { if(f==3) cout<<'-'; flag=1; cout<<s[res[i][0]].str[f]; } if(flag==1) cout<<" "<<res[i][1]<<endl; } } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator