1008 锤子剪刀布 (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
a = int(input())
c = d = e = 0
f = g = h = 0
j = k = l = 0
for i in range(0,a):
    b = input().split()
    if (b[0] == "C" and b[1] == "J") or (b[0] == "J" and b[1] == "B") or ((b[0] == "B" and b[1] == "C")):
        if b[0] == "C":
            f += 1
        elif b[0] == "J":
            g += 1
        else:
            h += 1
        c += 1
    elif (b[1] == "C" and b[0] == "J") or (b[1] == "J" and b[0] == "B") or ((b[1] == "B" and b[0] == "C")):
        if b[1] == "C":
            j += 1
        elif b[1] == "J":
            k += 1
        else:
            l += 1
        e += 1
    elif b[0] == b[1]:
        d += 1
if h >= f and h >= g:
    x = "B"
elif f >= g and f > h:
    x = "C"
else:
    x = "J"
if l >= j and l >= k:
    y = "B"
elif j >= k and f > l:
    y = "C"
else:
    y = "J"
print(c,d,e)
print(e,d,c)
print(x,y)

猜你喜欢

转载自blog.csdn.net/luslin/article/details/81634557