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:假设有个电话是001-0001你的程序会输出些什么? 改了还是WA!!!In Reply To:假设有个电话是001-0001你的程序会输出些什么? Posted by:frkstyc at 2005-03-24 09:30:37 #include<iostream.h> int main() { int a[100010],b[100010]={0}; char x[1000]; int t,num,cn=0,an; cin>>t; for(int i=0;i<t;i++) { num=0; an=0; cin>>x; int count=0; for(int j=0;;j++) { if(x[j]>='0'&&x[j]<='9') { num=num*10+int(x[j]-'0'); count++; } if(x[j]=='A'||x[j]=='B'||x[j]=='C') {num=num*10+2; count++; } if(x[j]=='D'||x[j]=='E'||x[j]=='F') {num=num*10+3; count++; } if(x[j]=='G'||x[j]=='H'||x[j]=='I') {num=num*10+4; count++; } if(x[j]=='J'||x[j]=='K'||x[j]=='L') {num=num*10+5; count++; } if(x[j]=='M'||x[j]=='N'||x[j]=='O') {num=num*10+6; count++; } if(x[j]=='P'||x[j]=='R'||x[j]=='S') {num=num*10+7; count++; } if(x[j]=='T'||x[j]=='U'||x[j]=='V') {num=num*10+8; count++; } if(x[j]=='W'||x[j]=='X'||x[j]=='Y') {num=num*10+9; count++; } //cout<<x[j]<<' '<<num<<endl; if(count==7) break; } //cout<<num<<endl; for(int k=0;k<cn;k++) { if(num==a[k]) { b[k]++; an=1; break; } } if(an==0) { a[cn]=num; //cout<<a[cn]<<endl; b[cn]++; //cout<<b[cn]<<endl; //cout<<cn<<endl; cn++; } } for(int pass=1;pass<cn;pass++) { int temp1,temp2; for(int i=0;i<cn-pass;i++) { if(a[i]>a[i+1]) { temp1=a[i]; temp2=b[i]; a[i]=a[i+1]; b[i]=b[i+1]; a[i+1]=temp1; b[i+1]=temp2; } } } //cout<<b[0]<<' '<<b[1]<<' '<<b[2]<<endl; int number=0; for(int q=0;q<cn;q++) { if(b[q]>1) { //cout<<a[q]<<' '; if(a[q]/1000000) cout<<a[q]/10000<<'-'<<a[q]%10000<<' '<<b[q]<<endl; else if(a[q]/100000) cout<<"0"<<a[q]/10000<<'-'<<a[q]%10000<<' '<<b[q]<<endl; else if(a[q]/10000) cout<<"00"<<a[q]/10000<<'-'<<a[q]%10000<<' '<<b[q]<<endl; else if(a[q]/1000) cout<<"000"<<'-'<<a[q]%10000<<' '<<b[q]<<endl; else if(a[q]/100) cout<<"000-0"<<a[q]%10000<<' '<<b[q]<<endl; else if(a[q]/10) cout<<"000-00"<<a[q]%10000<<' '<<b[q]<<endl; else if(a[q]/1) cout<<"000-000"<<a[q]%10000<<' '<<b[q]<<endl; else cout<<"000-0000 "<<b[q]<<endl; number++; } } if(number==0) cout<<"No duplicates."<<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