当前位置: 首页 > news >正文

PAT B1046. 划拳

题目描述
划拳是中国酒文化中一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。
下面给出甲、乙两人的划拳记录,请统计他们最后分别喝了多少杯酒。


输入格式
第一行先给出一个正整数N(≤100);随后N行每行给出一轮划拳的记录,格式为:甲喊甲划乙喊乙划
其中“喊”是喊出的数字,“划”是划出的数字,均为不超过100的正整数(两只手一起划)。
输出格式
在一行中先后输出甲、乙两人喝酒的杯数,其间以一个空格分隔。

输入样例

5

8 10 9 12

5 10 5 10

3 8 5 12

12 18 1 13

4 16 12 15

输出样例

1 2

思路:

        ①甲对了,乙错。乙喝一杯

        ②乙对了,甲错。甲喝一杯

        ③两人都错,都不喝。两人都对也不喝。

因此,用两个if语句进行判断即可。

易错点:

        ①计数的count变量不要放在while循环里,这样每次count都会重新赋值为0。

        ②将a1+b1赋值给c一定要在scanf之后,不然,a1,b1中初始为0,将0赋给了c,而不是你真正想得到的值。

代码实现: 

#include<cstdio>int main()
{int N;int count1 = 0,count2 = 0;  //count1记录甲喝的杯数,count2记录乙喝的杯数 scanf("%d",&N);while(N--){int a1,a2,b1,b2; //甲喊,甲划 ,乙喊,乙划 scanf("%d%d%d%d",&a1,&a2,&b1,&b2);int c = a1 + b1; //  甲喊 + 乙喊if(c == a2 && c != b2)    //甲对,乙错,乙喝一杯{count2++; }             else if(c == b2 && c != a2)  //乙对,甲错, 甲喝一杯 {count1++; }               }printf("%d %d\n",count1,count2); return 0;
}

http://www.lryc.cn/news/376955.html

相关文章:

  • 奥特曼谈AI的机遇、挑战与人类自我反思:中国将拥有独特的大语言模型
  • Java版-剑指offer数据结构与算法 视频教程 下载
  • mac禁用电池睡眠-mac盒盖连接显示器
  • 最好用的智能猫砂盆存在吗?自用分享智能猫砂盆测评!
  • LeetCode 每日一题 2748. 美丽下标对的数目
  • 全民拼购:引领商业新潮流,共创共赢新篇章
  • HarmonyOS角落里的知识:一杯冰美式的时间 -- 之打字机
  • C++ 03 之 命名空间
  • 20个国家科学数据中心(下)
  • 本地部署 Stable Diffusion3
  • 避免Tomcat调试信息泄露的最佳实践
  • Linux C++
  • Apache Doris 基础 -- 部分数据类型及操作
  • 大话C语言:第25篇 动态库
  • 数据分析:RT-qPCR分析及R语言绘图
  • 无线模块通过TCP/IP协议实现与PC端的数据传输解析
  • 嵌入式实验---实验一 通用GPIO实验
  • 中国首例!「DataKit」上架亚马逊云科技 Marketplace add-ons
  • 【博士每天一篇文献-算法】Progressive Neural Networks
  • 深圳中小企业融资攻略,贷款方法大盘点!
  • Android的自启动
  • 开源VisualFbeditor中文版,vb7 IDE,VB6升级64位跨平台开发安卓APP,Linux程序
  • github安全问题token和sshkeys
  • 超详细的selenium使用指南
  • LogicFlow 学习笔记——1. 初步使用 LogicFlow
  • 场外个股期权通道业务是什么意思?
  • 分页插件结合collection标签后分页数量不准确的问题
  • git diff 命令
  • Code Review常用术语
  • HashMap 源码中的巧妙小技巧