Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 17, 2018 14:22:43

Dangerous
Зарегистрирован: 2018-11-17
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите с задачей

Нужно вывести сочетания в убывающем порядке. На вход поступает 2 числа. Первое число это максимальный элемент,а второе это длина сочетаний.Например :
Ввод:
5
2
Вывод:
(5, 4)
(5, 3)
(4, 3)
(5, 2)
(4, 2)
(3, 2)
(5, 1)
(4, 1)
(3, 1)
(2, 1)
Где ошибка в коде ?

n = int(input())
k = int(input())

A = [0]
for i in range(k):
A.append(i + 1)
A.reverse()
while True:
print(A[0:len(A)-1])
s = 0
while A[s] >= n - k + A[k]:
A[k]=A[k-1]
s += 1
if s == k:
break
A[s] += 1
for i in range(s + 1, k + 1):
A[i] = A[i - 1] + 1

Отредактировано Dangerous (Ноя. 17, 2018 15:42:23)

Офлайн

#2 Ноя. 20, 2018 14:54:20

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2584
Репутация: +  60  -
Профиль   Отправить e-mail  

Помогите с задачей

А как должно быть?



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version