PAT乙级真题:C++:锤子剪刀布

编程入门 行业动态 更新时间:2024-10-21 04:55:55

PAT<a href=https://www.elefans.com/category/jswz/34/1765193.html style=乙级真题:C++:锤子剪刀布"/>

PAT乙级真题:C++:锤子剪刀布

题目描述

大家应该都会玩“锤子剪刀布”的游戏:
现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。

输入描述

输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。

输入例子

10
C J
J B
C B
B B
B C
C C
C B
J B
B C
J J

输出例子

5 3 2
2 3 5
B B

代码

#include <iostream>
using namespace std;
int main() {int n;cin>>n;int ca[]={0,0,0};// 胜 平 负 int cb[]={0,0,0};// 胜 平 负 int awin[]={0,0,0};// B C Jint bwin[]={0,0,0};// B C Jfor(int i=0; i<n; i++) {char a,b;cin>>a>>b;if(a=='B') {if(b=='B') {ca[1]++;cb[1]++;}if(b=='C') {ca[0]++;cb[2]++;awin[0]++; }if(b=='J') {cb[0]++;ca[2]++;awin[2]++;}}if(a=='C') {if(b=='B') {ca[2]++;cb[0]++;bwin[0]++;}if(b=='C') {ca[1]++;cb[1]++;}if(b=='J') {ca[0]++;cb[2]++;awin[1]++;}}if(a=='J') {if(b=='B') {ca[0]++;cb[2]++;awin[2]++;}if(b=='C') {cb[0]++;ca[2]++;bwin[1]++;}if(b=='J') {ca[1]++;cb[1]++;}}}cout<<ca[0]<<" "<<ca[1]<<" "<<ca[2]<<endl;cout<<cb[0]<<" "<<cb[1]<<" "<<cb[2]<<endl;if(awin[0]>=awin[1]&& awin[0]>=awin[2]) {cout<<"B ";} else if(awin[1]>=awin[0] && awin[1]>=awin[2]) {cout<<"C ";} else {cout<<"J ";}if(bwin[0]>=bwin[1]&& bwin[0]>=bwin[2]) {cout<<"B";} else if(bwin[1]>=bwin[0] && bwin[1]>=bwin[2]) {cout<<"C";} else {cout<<"J";}
}

更多推荐

PAT乙级真题:C++:锤子剪刀布

本文发布于:2024-03-11 21:53:24,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1729984.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:乙级   锤子   剪刀   真题   PAT

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!