PATB1018 第三个测试点有问题,一直找不到原因,而且一直觉得有点不严谨,如果有个人一局都没赢,那最后输出胜利次数最多的手势不该没有吗


#include<stdio.h>

int change(char a){
    if(a=='B') return 0;
    if(a=='C') return 1;
    if(a=='J') return 2;
}
int main()
{
    int N=0;
    char c1,c2;
    int timesa[3]={0},timesb[3]={0},v1[3]={0},v2[3]={0};
    char mp[3]={'B','C','J'};
    scanf("%d",&N);
    for(int i=0;i<N;i++)
    {
        getchar();
        scanf("%c %c",&c1,&c2);
        if((change(c1)+1)%3==change(c2))
        {
            timesa[0]++;
            timesb[2]++;
            v1[change(c1)]++;
        }
        else if((change(c2)+1)%3==change(c1))
        {
            timesb[0]++;
            timesa[2]++;
            v1[change(c2)]++;
        }
        else if(change(c2)==change(c1))
        {
            timesb[1]++;
            timesa[1]++;
        }
        
    }
    printf("%d %d %d\n",timesa[0],timesa[1],timesa[2]);
    printf("%d %d %d\n",timesb[0],timesb[1],timesb[2]);
    int i1=0,i2=0;
    for(int i=1;i<3;i++){
        if(v1[i]>v1[i1])i1=i;
        if(v2[i]>v2[i1])i2=i;
    }
    printf("%c %c",mp[i1],mp[i2]);
    return 0;
}