1018. 锤子剪刀布
来源:互联网 发布:javascript 英文地图 编辑:程序博客网 时间:2024/04/30 10:00
1018. 锤子剪刀布 (20)
输入格式:
输入第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 <stdio.h>struct a{ int b; int c; int j;};int main(){ int N, i, A = 0, B = 0; char a = NULL, b = NULL; struct a p1 = { 0,0,0 }; struct a p2 = { 0,0,0 }; scanf("%d", &N); i = N; while (i--) { getchar(); scanf("%c %c", &a, &b); if ((a == 'B'&&b == 'C') || (a == 'C'&&b == 'J') || (a == 'J'&&b == 'B')) // 统计a赢的手势 { A++; if (a == 'B') p1.b++; if (a == 'C') p1.c++; if (a == 'J') p1.j++; } if ((b == 'B'&&a == 'C') || (b == 'C'&&a == 'J') || (b == 'J'&&a == 'B')) // 统计b赢的手势 { B++; if (b == 'B') p2.b++; if (b == 'C') p2.c++; if (b == 'J') p2.j++; } } printf("%d %d %d\n", A, N - A - B, B); //输出胜负平场次 printf("%d %d %d\n", B, N - A - B, A); if (p1.b >= p1.c&&p1.b>=p1.j) //输出赢的最多的手势 printf("B "); else if (p1.c > p1.b&&p1.c>=p1.j) printf("C "); else printf("J "); if (p2.b >= p2.c&&p2.b>=p2.j) printf("B"); else if (p2.c >= p2.j&&p2.c>p2.b) printf("C"); else printf("J");}
1 0
- 1018. 锤子剪刀布
- 1018.锤子剪刀布
- 1018. 锤子剪刀布
- 1018. 锤子剪刀布
- 1018. 锤子剪刀布
- 1018. 锤子剪刀布
- 1018. 锤子剪刀布
- 1018.锤子剪刀布
- 1018. 锤子剪刀布
- 1018. 锤子剪刀布 (20)
- PAT 1018. 锤子剪刀布
- 1018. 锤子剪刀布 (20)
- 1018. 锤子剪刀布 (20)
- 1018. 锤子剪刀布 (20)
- 1018. 锤子剪刀布 (20)
- 1018. 锤子剪刀布 (20)
- PAT 1018. 锤子剪刀布
- 1018. 锤子剪刀布 (20)
- PAT乙级(Basic Level)练习题 >NowCoder小定律
- PAT乙级(Basic Level)练习题 >NowCoder小定律
- Linux-进程描述(3)之进程状态僵尸进程与孤儿进程
- Android中对XML和JSON数据解析的方法汇总
- 有了Windows Defender应用程序防护功能,再也不担心电脑免遭恶意攻击
- 1018. 锤子剪刀布
- Kafka的Topic操作
- 返回上一页并强制刷新的js代码
- java 从键盘输入数据判断是否是整数,是的话再求和
- 面试8之给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成
- 武汉大学校赛总结 + E题+F题
- Linux-进程描述(2)之进程标识符进程位置与环境变量
- 静态与非静态
- 选举游戏(京东2016实习生真题)