📄 3143045_wa.cpp
字号:
#include<iostream.h>
int input[100000][2];
int result[100000][2];
void read(char * p,int t)
{int i=0,j=0;
while(i<7)
{if(*(p+j)=='-') j++;
else if(*(p+j)>='0'&&*(p+j)<='9') input[t][0]*=10,input[t][0]+=*(p+j)-'0',j++,i++;
else if(*(p+j)>='A'&&*(p+j)<='C') input[t][0]*=10,input[t][0]+=2,j++,i++;
else if(*(p+j)>='D'&&*(p+j)<='F') input[t][0]*=10,input[t][0]+=3,j++,i++;
else if(*(p+j)>='G'&&*(p+j)<='I') input[t][0]*=10,input[t][0]+=4,j++,i++;
else if(*(p+j)>='J'&&*(p+j)<='L') input[t][0]*=10,input[t][0]+=5,j++,i++;
else if(*(p+j)>='M'&&*(p+j)<='O') input[t][0]*=10,input[t][0]+=6,j++,i++;
else if(*(p+j)>='P'&&*(p+j)<='S') input[t][0]*=10,input[t][0]+=7,j++,i++;
else if(*(p+j)>='T'&&*(p+j)<='V') input[t][0]*=10,input[t][0]+=8,j++,i++;
else if(*(p+j)>='W'&&*(p+j)<='Y') input[t][0]*=10,input[t][0]+=9,j++,i++;
}
}
void bubble(int size)
{int i,temp,work;
for(int pass=0;pass<size;pass++)
{work=1;
for(i=0;i<size-pass;i++)
if(result[i][0]>result[i+1][0]) {temp=result[i][0];result[i][0]=result[i+1][0];result[i+1][0]=temp;temp=result[i][1];result[i][1]=result[i+1][1];result[i+1][1]=temp;work=0;}
if(work) break;
}
}
void search(int m)
{int i=m-1;
while((input[i][0]!=input[m][0])&&i>=0) {i--;}
if(i>=0) input[i][1]+=input[m][1],input[m][1]=0;
}
int main ()
{int t,i,j,o,k,work=0;
char *p=new char[100];
cin>>t;
for(i=0;i<t;i++)
{cin>>p;
input[i][0]=0;
input[i][1]=1;
read(p,i);}
for(i=t;i>=0;i--) search(i);
for(i=0,j=0;i<t;i++)
{if(input[i][1]>1) result[j][0]=input[i][0],result[j][1]=input[i][1],j++;}
bubble(j-1);
for(i=0;i<j;i++)
{if(result[i][0]<1000000)
{k=1;for(j=0;j<7;j++)
{k*=10;if(result[i][0]*k>1000000) for(int m=0;m<j;m++) cout<<0;} }
o=result[i][0]/10000;if(o!=0)cout<<o<<'-';
k=result[i][0]%10000;if(k!=0)cout<<k;
cout<<" "<<result[i][1]<<endl;work=1;}
if(work==0) cout<<"No duplicates.";
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -