解题思路:
逆向思维, 判断不可能组成顺子的牌面,其余就是可能顺子
class Solution:
def IsContinuous(self, numbers):
# write code here
numbers_not_zero = list()
max_num, min_num = -1, 14
for number in numbers:
if number != 0:
numbers_not_zero.append(number)
if number > max_num:
max_num = number
if number < min_num:
min_num = number
# 最大值 - 最小值 > 4: 说明不可能组成顺子
if max_num - min_num > len(numbers)-1:
return False
# 有重复数字,说明不可能组成顺子
if len(numbers_not_zero) != len(set(numbers_not_zero)):
return False
return True


京公网安备 11010502036488号