pat乙级 1018 锤子 剪刀 布

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>



int max(int a,int b){
    return a>b?a:b;
}
int main()
{
    int n;
    scanf("%d",&n);
    getchar(); 
    char a,b;
    int ap[6]={0},bp[6]={0};
    //0 1 2 3 4 5 分别代表 胜利 平局 失败 锤子胜利 剪刀胜利 布胜利
    while(scanf("%c %c",&a,&b)!=EOF){
        getchar();
        if(a=='C'&&b=='J'){
            ap[0]++;
            bp[2]++;
            ap[3]++;
        }
        if(a=='C'&&b=='C'){
            ap[1]++;
            bp[1]++;
        }
        if(a=='C'&&b=='B'){
            ap[2]++;
            bp[0]++;
            bp[5]++;
        }
        if(a=='J'&&b=='B'){
            ap[0]++;
            bp[2]++;
            ap[4]++;
        }
        if(a=='J'&&b=='J'){
            ap[1]++;
            bp[1]++;

        }
        if(a=='J'&&b=='C'){
            ap[2]++;
            bp[0]++;
            bp[3]++;
        }
        if(a=='B'&&b=='C'){
            ap[0]++;
            bp[2]++;
            ap[5]++;
        }
        if(a=='B'&&b=='B'){
            ap[1]++;
            bp[1]++;
        }
        if(a=='B'&&b=='J'){
            ap[2]++;
            bp[0]++;
            bp[4]++;
        }
    }
    printf("%d %d %d\n",ap[0],ap[1],ap[2]);
    printf("%d %d %d\n",bp[0],bp[1],bp[2]);
    while(1){

    
    if(ap[3]>=ap[4]&&ap[3]>ap[5]){
        printf("C ");break;
    }
    if(ap[3]>ap[4]&&ap[3]==ap[5]){
        printf("B ");break;
    }
    if(ap[4]>ap[3]&&ap[4]>ap[5]){
        printf("J ");break;
    }
    if(ap[4]==ap[3]&&ap[4]>ap[5]){
        printf("C ");break;
    }
    if(ap[4]>=ap[3]&&ap[4]==ap[5]){
        printf("B ");break;
    }
    if(ap[5]>=ap[3]&&ap[5]>=ap[4]){
        printf("B ");break;
    }

}
while(1){

    
    if(bp[3]>=bp[4]&&bp[3]>bp[5]){
        printf("C");break;
    }
    if(bp[3]>bp[4]&&bp[3]==bp[5]){
        printf("B");break;
    }
    if(bp[4]>bp[3]&&bp[4]>bp[5]){
        printf("J");break;
    }
    if(bp[4]==bp[3]&&bp[4]>bp[5]){
        printf("C");break;
    }
    if(bp[4]>=bp[3]&&bp[4]==bp[5]){
        printf("B");break;
    }
    if(bp[5]>=bp[3]&&bp[5]>=bp[4]){
        printf("B");break;
    }

}
    return 0;
}

写的太冗长了 但不知道怎么写简练写 以后想到再补吧

posted @ 2023-03-02 17:39  雨中白发人  阅读(35)  评论(0)    收藏  举报