题解 | #扑克牌大小#
扑克牌大小
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')
安克创新 Anker公司福利 792人发布
