トランプでまっすぐ
トランプからランダムに5枚のカードを引いて、それがストレートかどうか、つまり5枚のカードが連続しているかどうかを判断します。2〜10は数字そのもの、Aは1、Jは11、Qは12、Kは13、大小の王は0であり、任意の数と見なすことができます。Aは14と見なすことはできません。
class Solution:
def isStraight(self, nums: List[int]) -> bool:
# count_0 = 0
# max_num, min_num = 0, 14
# for num in nums:
# if num == 0:
# count_0+=1
# else:
# if nums.count(num) > 1:
# return(False)
# if num < min_num:
# min_num = min(num, min_num)
# res = max(nums) - min_num
# if res - count_0 > 4:
# return(False)
# else:
# return(True)
#
min_num, max_num = 14, 0
repeat = set()
for num in nums:
if num == 0:
continue
if num in repeat:
return(False)
min_num = min(num, min_num)
max_num = max(num, max_num)
repeat.add(num)
return(max_num - min_num < 5)