1018锤子剪刀布
来源:互联网 发布:ipad清理缓存软件 编辑:程序博客网 时间:2024/04/30 14:35
大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:
现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。
输入格式:
输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。
输出格式:
输出第1、2行分别给出甲、乙的胜、平、负次数,数字间以1个空格分隔。第3行给出两个字母,分别代表甲、乙获胜次数最多的手势,中间有1个空格。如果解不唯一,则输出按字母序最小的解。
输入样例:10C JJ BC BB BB CC CC BJ BB CJ J输出样例:
5 3 22 3 5B B
#include<iostream>#include<string>#include<math.h>#include<stdio.h>using namespace std;int main(){for(int n;cin>>n;){int win_A=0,win_B=0,pin=0,lose_A=0,lose_B=0;//012 BCJint log_A[3]={0,0,0};int log_B[3]={0,0,0};for(int i = 0;i < n;i++){char a,b;cin>>a>>b;if(a == b){pin++;}else if(a == 'C' && b == 'J'){win_A++;lose_B++;log_A[1]++;}else if(a == 'C' && b == 'B'){win_B++;lose_A++;log_B[0]++;}else if(a == 'J' && b == 'C'){win_B++;lose_A++;log_B[1]++;}else if(a == 'J' && b =='B'){win_A++;lose_B++;log_A[2]++;}else if(a == 'B' && b == 'J'){win_B++;lose_A++;log_B[2]++;}else if(a == 'B' && b == 'C'){win_A++;lose_B++;log_A[0]++;}}printf("%d %d %d\n",win_A,pin,lose_A);printf("%d %d %d\n",win_B,pin,lose_B);if(log_A[0] > log_A[1] && log_A[0] > log_A[2]){printf("%c ",'B');}else if(log_A[1] > log_A[0] && log_A[1] > log_A[2]){printf("%c ",'C');}else if(log_A[2] > log_A[0] && log_A[2] > log_A[1]){printf("%c ",'J');}else if(log_A[0] == log_A[1] && log_A[0] > log_A[2]){printf("%c ",'B');}else if(log_A[0] == log_A[2] && log_A[0] > log_A[1]){printf("%c ",'B');}else if(log_A[1] == log_A[2] && log_A[1] > log_A[0]){printf("%c ",'C');}else if(log_A[0] == log_A[1] && log_A[1] == log_A[2]){printf("%c ",'B');}if(log_B[0] > log_B[1] && log_B[0] > log_B[2]){printf("%c\n",'B');}else if(log_B[1] > log_B[0] && log_B[1] > log_B[2]){printf("%c\n",'C');}else if(log_B[2] > log_B[0] && log_B[2] > log_B[1]){printf("%c\n",'J');}else if(log_B[0] == log_B[1] && log_B[0] > log_B[2]){printf("%c\n",'B');}else if(log_B[0] == log_B[2] && log_B[0] > log_B[1]){printf("%c\n",'B');}else if(log_B[1] == log_B[2] && log_B[1] > log_B[0]){printf("%c\n",'C');}else if(log_B[0] == log_B[1] && log_B[1] == log_B[2]){printf("%c\n",'B');}}return 0 ;}
0 0
- 1018锤子剪刀布
- 1018 锤子剪刀布
- 1018 锤子剪刀布
- PAT 1018 锤子剪刀布
- PAT-1018 锤子剪刀布
- PAT 1018 锤子剪刀布
- PAT 1018锤子剪刀布
- PAT basic 1018 : 锤子剪刀布
- ZJU PAT 1018 锤子剪刀布
- 1018_锤子剪刀布 (20)
- PAT_乙级 1018 锤子剪刀布
- PAT BASIC 1018 锤子剪刀布
- PAT乙级1018 锤子剪刀布
- AOJ663 锤子剪刀布
- PAT1018 锤子剪刀布
- pat_b_1018 锤子剪刀布
- 1018. 锤子剪刀布
- PAT1018锤子剪刀布
- js写随机输出7位数代码教程
- 1017A除以B
- 生成模型与判别模型
- MongoDB加入到Windows服务的方法
- dynamic_cast<>操作数必须是多态类型吗
- 1018锤子剪刀布
- Unity3D 鼠标检测世界中的游戏对象
- 线性表的链状存储结构的实现
- JSP+JavaScript 二级联动 静态
- 【Violet 6】【BZOJ2724】蒲公英
- 调试代码的方法--将网络获取到的数据存储到文件中,然后打开文件看结果。
- [NOIP 2012]借教室 二分+前缀和
- 1019数字黑洞
- 【java学习】基本类型和引用类型区别(堆和栈区别)