У меня есть домашнее задание, где мне нужно напечатать количество результатов (диапазон (1,36), 7), где нет чисел, последовательных. Я уже написал сценарий питона для этого, но не знаю, как посчитать строки результатов, что не является чем-то вроде этого:Подсчитайте количество результатов
(1, 2, 5, 6, 8, 16, 34)
(1, 2, 5, 6, 8, 16, 35)
(1, 2, 5, 6, 8, 17, 18)
...
Что Я ожидаю, что результатом будет:
А вот мой маленький сценарий:
from itertools import combinations
def count_consecutive(l):
counts = [1]
counts_index = 0
for i in range(1, len(l)):
if l[i] == l[i-1] + 1:
counts[counts_index] = counts[counts_index] + 1
else:
counts.append(1)
counts_index += 1
return max(counts)
for comb in combinations(range(1,36), 7):
if count_consecutive(comb) not in [5, 6, 7]:
#print (comb)
Если нужно считать перестановки ', где нет номеров consecutive', что' если count_consecutive (гребень) не в [5, 6, 7] 'для? Разве это не должно быть 'if count_consecutive (comb) == 0'? –