这个题,难倒是不难,就是有点坑,思路非常简单,关键就是判断“出那个胜率会更大”。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const double pi=acos(-1.0);
const double eps=1e-8;
const int maxn=100005;
int main()
{
int n;
scanf("%d",&n);
int sheng1=0;
int sheng2=0;
int ping=0;
int fu1=0;
int fu2=0;
int jian[2];
int bu[2];
int shi[2];
memset(jian,0,sizeof(jian));
memset(bu,0,sizeof(bu));
memset(shi,0,sizeof(shi));
int max1=0;
int max2=0;
while(n--)
{
getchar();
//
char x,y;
scanf("%c",&x);
getchar();
scanf("%c",&y);
// printf("%c %c\n",x,y);
if(x==y)
{
ping++;
}
else
{
if(x=='C'&&y=='J')
{
sheng1++;
fu2++;
shi[0]++;
}
if(x=='J'&&y=='B')
{
sheng1++;
fu2++;
jian[0]++;
}
if(x=='B'&&y=='C')
{
sheng1++;
fu2++;
bu[0]++;
}
if(y=='C'&&x=='J')
{
sheng2++;
fu1++;
shi[1]++;
}
if(y=='J'&&x=='B')
{
sheng2++;
fu1++;
jian[1]++;
}
if(y=='B'&&x=='C')
{
sheng2++;
fu1++;
bu[1]++;
}
}
}
printf("%d %d %d\n",sheng1,ping,fu1);
printf("%d %d %d\n",sheng2,ping,fu2);
if(bu[0]>=jian[0]&&bu[0]>=shi[0])
{
printf("B ");
}
if(shi[0]>bu[0]&&shi[0]>=jian[0])
{
printf("C ");
}
if(jian[0]>shi[0]&&jian[0]>bu[0])
printf("J ");
if(bu[1]>=jian[1]&&bu[1]>=shi[1])
{
printf("B\n");
}
if(shi[1]>bu[1]&&shi[1]>=jian[1])
{
printf("C\n");
}
if(jian[1]>shi[1]&&jian[1]>bu[1])
printf("J\n");
}