#include <stdio.h>
int cmp(char a,char b){ //判断输赢,赢则1,输则-1,平则0
int r;
if(a=='C'){
if(b=='C')
r=0;
else if(b=='J')
r=1;
else if(b=='B')
r=-1;
}
else if(a=='J'){
if(b=='C')
r=-1;
else if(b=='J')
r=0;
else if(b=='B')
r=1;
}
else if(a=='B'){
if(b=='C')
r=1;
else if(b=='J')
r=-1;
else if(b=='B')
r=0;
}
return r;
}
int main(){
int n,r,p1[3]={0},p2[3]={0},s1=0,s2=0;
char a,b;
scanf("%d",&n);
for(int i=0;i<n;i++){
getchar();
scanf("%c %c",&a,&b);
r=cmp(a,b);
if(r==1){ //如果a赢
if(a=='B')
p1[0]++; //a用布赢的次数增加
else if(a=='C')
p1[1]++; //a用拳头赢的次数增加
else if(a=='J')
p1[2]++; //a用剪刀赢的次数增加
s1++; //a赢的总次数增加
}
else if(r==-1){
if(b=='B')
p2[0]++;
else if(b=='C')
p2[1]++;
else if(b=='J')
p2[2]++;
s2++;
}
}
printf("%d %d %d\n",s1,n-s1-s2,s2);
printf("%d %d %d\n",s2,n-s1-s2,s1);
int max1=0,max2=0;
for(int i=0;i<3;i++){
if(p1[i]>p1[max1])
max1=i;
}
for(int i=0;i<3;i++){
if(p2[i]>p2[max2])
max2=i;
}
char c[3]={'B','C','J'}; //字母升序
printf("%c %c",c[max1],c[max2]);
return 0;
}
测试点5:
2
C J
J C