PAT乙级锤子剪刀布 (c++)

在这里插入图片描述
在这里插入图片描述
✨最后需要输出赢得次数最多的符号,若相同则选择字符小的输出,所以就直接 数组按字符由小到大定义即可。

using namespace std;
void xulie(int k){
    if(k==0){
        cout<<"B";
    }else if(k==1){
        cout<<"C";
    }else{
        cout<<"J";
    }
}
int maxa(int y1[]){
    int k=0;
    int max1 = 0;
    for(int i =0;i<3;i++){

        if(y1[i] > max1){
            max1 = y1[i];
            k = i;
        }
    }

    return k;
}
int main(){
    int n;
    cin>>n;
    char a[n][2];
    for(int i=0;i<n;i++){
        cin>>a[i][0]>>a[i][1];
    }
    int x1 = 0;//甲赢
    int x2 = 0;//平
    int x3 = 0;//甲输
    int  y1[3]={};//y1[0]代表'B',y1[1]代表'C',y1[2]代表'J'
    int  y2[3] = {};
    for(int i=0;i<n;i++){
        if(a[i][0] == 'C'){
            if(a[i][1] == 'J'){
                x1++;
                y1[1]++;
            }else if(a[i][1] == 'C'){
                x2++;
            }else{
                x3++;
                y2[0]++;
            }
        }else if(a[i][0] == 'B'){
            if(a[i][1] == 'J'){
                x3++;
                y2[2]++;
            }else if(a[i][1] == 'B'){
                x2++;
            }else{
                x1++;
                y1[0]++;
            }
        }else{
            if(a[i][1] == 'C'){
                x3++;
                y2[1]++;
            }else if(a[i][1] == 'J'){
                x2++;
            }else{
                x1++;
                y1[2]++;
            }
        }
    }

    cout<<x1<<" "<<x2<<" "<<x3<<endl;
    cout<<x3<<" "<<x2<<" "<<x1<<endl;

    int k1 = maxa(y1);
    xulie(k1);
    cout<<" ";
    int k2 = maxa(y2);
    xulie(k2);

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值