#include<stdio.h>
int main()
{
int num;
scanf("%d",&num);
int i,j;char a[num][2];
char hh[3]={'B','C','J'};
int m[3]={0};int m2[3]={0};
int a1=0;int a2=0;int a3=0;
int ac=0,ab=0,aj=0;
for(i=0;i<num;i++)
{
for(j=0;j<2;j++)
{
scanf("%s",&a[i][j]);
}
}
for(i=0;i<num;i++)
{
if(a[i][0]=='C')
{
if(a[i][1]=='J'){
a1++;
m[1]++;}
else if(a[i][1]=='B')
a3++;
else if(a[i][1]=='C'){
a2++;
m2[1]++;}
}
else if(a[i][0]=='J')
{
if(a[i][1]=='C'){
a3++;
m[2]++;}
else if(a[i][1]=='B')
a1++;
else if(a[i][1]=='J'){
a2++;
m2[2]++;}
}
else if(a[i][0]=='B')
{
if(a[i][1]=='C'){
a1++;
m[0]++;}
else if(a[i][1]=='J')
a3++;
else if(a[i][1]=='B'){
a2++;
m2[0]++;}
}
}int k=0,k2=0;
for(i=0;i<3;i++)
{
int max=m[0];
if(m[i]>max){
max=m[i];
k=i;
}
}
for(i=0;i<3;i++)
{
int max=m2[0];
if(m[i]>max){
max=m2[i];
k2=i;
}
}
printf("%d %d %d\n",a1,a2,a3);
printf("%d %d %d\n",a3,a2,a1);
printf("%c %c",hh[k],hh[k2]);
return 0;
int main()
{
int num;
scanf("%d",&num);
int i,j;char a[num][2];
char hh[3]={'B','C','J'};
int m[3]={0};int m2[3]={0};
int a1=0;int a2=0;int a3=0;
int ac=0,ab=0,aj=0;
for(i=0;i<num;i++)
{
for(j=0;j<2;j++)
{
scanf("%s",&a[i][j]);
}
}
for(i=0;i<num;i++)
{
if(a[i][0]=='C')
{
if(a[i][1]=='J'){
a1++;
m[1]++;}
else if(a[i][1]=='B')
a3++;
else if(a[i][1]=='C'){
a2++;
m2[1]++;}
}
else if(a[i][0]=='J')
{
if(a[i][1]=='C'){
a3++;
m[2]++;}
else if(a[i][1]=='B')
a1++;
else if(a[i][1]=='J'){
a2++;
m2[2]++;}
}
else if(a[i][0]=='B')
{
if(a[i][1]=='C'){
a1++;
m[0]++;}
else if(a[i][1]=='J')
a3++;
else if(a[i][1]=='B'){
a2++;
m2[0]++;}
}
}int k=0,k2=0;
for(i=0;i<3;i++)
{
int max=m[0];
if(m[i]>max){
max=m[i];
k=i;
}
}
for(i=0;i<3;i++)
{
int max=m2[0];
if(m[i]>max){
max=m2[i];
k2=i;
}
}
printf("%d %d %d\n",a1,a2,a3);
printf("%d %d %d\n",a3,a2,a1);
printf("%c %c",hh[k],hh[k2]);
return 0;
}
运行结果部分正确,找不出原因。