题解 | #扑克牌大小#
扑克牌大小
https://www.nowcoder.com/practice/d290db02bacc4c40965ac31d16b1c3eb
import sys def pokerlist(a): a0 = [] for i in a.split(" "): if i == "J": a0.append(11) elif i == "Q": a0.append(12) elif i == "K": a0.append(13) elif i == "A": a0.append(14) elif i == "2": a0.append(15) elif i == "joker": a0.append(21) elif i == "JOKER": a0.append(22) else: a0.append(int(i)) return a0 def turnvalue(a1): if a1 == [21,22]: return 4,10000 for i in range(len(a1)-1): if a1[i]+1 == a1[i+1]: continue else: break else: return 10,max(a1) if a1.count(a1[0]) == 4: value1 = 1000+a1[0] return 4,value1 if a1.count(a1[0]) == 3: value1 = 100+a1[0] return 3,value1 if a1.count(a1[0]) == 2: value1 = 100+a1[0] return 2,value1 if a1.count(a1[0]) == 1: value1 = sum(a1) return 1,value1 for line in sys.stdin: a = line.strip().split("-") player1 = pokerlist(a[0]) player2 = pokerlist(a[1]) type1,value1 = turnvalue(player1) type2,value2 = turnvalue(player2) if type1 == 4 or type2 == 4: if value1>value2: print(a[0]) else: print(a[1]) elif type1 == type2: if value1>value2: print(a[0]) else: print(a[1]) else: print('ERROR')