当前位置 : 主页 > 编程语言 > c++ >

PAT1046

来源:互联网 收集:自由互联 发布时间:2021-06-23
题目链接 https://pintia.cn/problem-sets/994805260223102976/problems/994805277847568384 题解 题目有几个点需要注意: 甲和乙同时赢或者同时输都算平局,甲和乙都不需要喝酒 游戏结束不用我们判断 /

题目链接

https://pintia.cn/problem-sets/994805260223102976/problems/994805277847568384

题解

题目有几个点需要注意:

  • 甲和乙同时赢或者同时输都算平局,甲和乙都不需要喝酒
  • 游戏结束不用我们判断
// PAT BasicLevel 1046
// https://pintia.cn/problem-sets/994805260223102976/problems/994805277847568384

#include <iostream>
using namespace std;

int main()
{
    // 变量定义
    int N;  // N次划拳
    scanf("%d",&N);
    int AYell, AOut;  // A喊的数字和出的数字
    int BYell, BOut;  // B喊的数字和出的数字
    bool AWin,BWin;  // 此次划拳A和B的输赢
    int ALose=0,BLose=0;  // A和B输的次数
    int yellSum;  // 此次划拳喊的数字之和

    // 统计杯数
    for(int i=0;i<N;i++)
    {
        scanf("%d %d %d %d",&AYell,&AOut,&BYell,&BOut);
        yellSum = AYell + BYell;  // 此次划拳喊的数字之和
        AWin = (AOut == yellSum);  // A的输赢
        BWin = (BOut == yellSum);
        
        // 如果一人赢一人输
        if(AWin!=BWin)
        {
            ALose += !AWin;
            BLose += !BWin;
        }
    }

    // 输出结果
    printf("%d %d",ALose,BLose);

    system("pause");
    return 0;
}

作者:@臭咸鱼

转载请注明出处:https://www.cnblogs.com/chouxianyu/

欢迎讨论和交流!

网友评论