PTA 1018 锤子剪刀布 (20 分)

简介: 大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示

题目

大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:


网络异常,图片无法展示
|


现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。

输入格式:

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

输出格式:

输出第 1、2 行分别给出甲、乙的胜、平、负次数,数字间以 1 个空格分隔。第 3 行给出两个字母,分别代表甲、乙获胜次数最多的手势,中间有 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

解题思路

最后一个用例超时,网上没有解决办法,python是比较慢

N = int(input())
# N = int("10")
chuquanDic = {
    "B": 0,
    "C": 2,
    "J": 1,
}
AWins = {
    "B": 0,
    "C": 0,
    "J": 0,
}
AChengji = [0,0,0]#胜、平、负次数
BWins = {
    "B": 0,
    "C": 0,
    "J": 0,
}
for _ in range(N):
    Achu, Bchu = map(str, input().split())
    # Achu, Bchu = map(str, "C J".split())
    res = chuquanDic[Achu] - chuquanDic[Bchu]
    if res ==1 or res == -2:#A赢
        AWins[Achu] += 1
        AChengji[0] += 1
    elif res ==-1 or res == 2:#B赢
        BWins[Bchu] += 1
        AChengji[2] += 1
    elif res == 0:#平局
        AChengji[1] += 1
# AChengjiNew = map(lambda x:str(x), AChengji)
# print(" ".join(AChengjiNew))
print(AChengji[0],AChengji[1],AChengji[2])
print(AChengji[2],AChengji[1],AChengji[0])
maxA = max(AWins.values())
maxB = max(BWins.values())
resMax = ""
for (key,val) in AWins.items():
    if val == maxA:
        resMax += key
        break
for (key,val) in BWins.items():
    if val == maxB:
        resMax = resMax + " " + key
        break
print(resMax)
目录
相关文章
|
3月前
|
算法
联想算法题-石头剪刀布
联想算法题-石头剪刀布
39 0
|
9月前
小游戏(猜数字、剪刀石头布) 2021-01-03
小游戏(猜数字、剪刀石头布) 2021-01-03
|
4月前
|
存储 JavaScript 索引
基于 HTML+CSS+JS 的石头剪刀布游戏
基于 HTML+CSS+JS 的石头剪刀布游戏
78 0
|
7月前
|
算法
石头剪刀布 L1-044 稳赢 15分
石头剪刀布 L1-044 稳赢 15分
|
7月前
|
弹性计算 数据安全/隐私保护 Python
石头剪刀布
本场景介绍如何在阿里云ECS环境下用Python实现一款人机对战小游戏:石头剪刀布。
288 0
|
7月前
|
C语言
石头剪刀布小游戏(C语言)
1.游戏规则 2.游戏思路 3.代码实现 1.分别创建头文件game.h、源文件game.c和test.c 2.创建菜单并对输入的选择进行处理 3.实现石头剪刀布小游戏 3.1 打印菜单帮助玩家出拳,并对玩家选择进行处理 3.2电脑随机出拳 3.3判断输赢 3.4 打印游戏结果 3.5将结果写入文件 4.查看游戏记录 5.删除游戏记录 4.完整代码
193 0
|
8月前
[普及练习场] 生活大爆炸版石头剪刀布
[普及练习场] 生活大爆炸版石头剪刀布
115 0
|
测试技术
PTA 1020 月饼 (25 分)
月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。
101 0
|
机器学习/深度学习 人工智能
PTA 7-3 拼题 A 是真爱 (20 分)
如果一个人在一段话里很多次提到 pintia,那对拼题 A 就是真爱啦~ 本题就请你检查一下给定的文字中出现了几次 pintia。
98 0
PTA 1082 射击比赛 (20 分)
本题目给出的射击比赛的规则非常简单,谁打的弹洞距离靶心最近,谁就是冠军
64 0

相关实验场景

更多