Уведомления

Группа в Telegram: @pythonsu

#1 Март 14, 2011 16:22:24

garza
От:
Зарегистрирован: 2011-03-14
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

составить множество всех сочетаний из n по k

нужно составить множество всех сочетаний в лексикографическом порядке. Задаются числа n и k.
Число таких сочетаний C = math.factorial(n)/(math.factorial(k)*math.factorial(n-k))

например для чисел n=5 и k=3 получаем

123
124
125
134
135
145
234
235
345

помогите плз с алгоритмом



Офлайн

#2 Март 14, 2011 17:20:43

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

составить множество всех сочетаний из n по k

>>> import itertools
>>> list(itertools.combinations(range(1, 6), 3))
[(1, 2, 3), (1, 2, 4), (1, 2, 5), (1, 3, 4), (1, 3, 5), (1, 4, 5), (2, 3, 4), (2, 3, 5), (2, 4, 5), (3, 4, 5)]
..bw



Офлайн

#3 Март 14, 2011 17:22:24

garza
От:
Зарегистрирован: 2011-03-14
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

составить множество всех сочетаний из n по k

спасибо!



Отредактировано (Март 14, 2011 17:26:28)

Офлайн

#4 Март 14, 2011 19:16:43

MihaMega491
От:
Зарегистрирован: 2011-03-09
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

составить множество всех сочетаний из n по k

все равно не чего не понял (



Офлайн

#5 Март 16, 2011 01:50:03

aliens
От:
Зарегистрирован: 2007-08-14
Сообщения: 135
Репутация: +  1  -
Профиль   Отправить e-mail  

составить множество всех сочетаний из n по k

MihaMega491
А что именно не понял?
Загрузил библиотеку itertools, затем выполнил 1 ее функцию с параметрами
range(1,6) выдает список чисел
Последний параметр 3 - сколько символов



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version