Я не получаю количество результатов, которые я должен получить от этой функции в заголовке, поэтому я надеюсь на вашу помощь.
Глядя на документы http://docs.python.org/library/itertools.html#itertools.combinations количестворезультаты должны быть
Количество возвращенных элементов равно n!/ р!/ (№)!когда 0 <= r <= n или ноль, когда r> n.
И это работает для примера там
комбинаций ('ABCD', 2) --> AB AC AD BC BD CD
потому что n!/ р!/ (№)!= 4!/ 2!/ 2!= 6
Но если я попробую
combinations('ABCDEF', 3) --> AB AC AD AE AF BC BD BE BF CD CE CF DE DF EF
, я получу эти 15 результатов.Но п!/ р!/ (№)!= 6!/ 3!/ (6-3)!= 720/6/6 = 20
Итак: Документы Python сказали мне, что у меня должно быть 20 результатов, но я получаю 15.
Можете ли вы помочь мне понять, что мне не хватает?Может быть, это что-то в моей математике, так как эта формула должна быть правильной, как в записи Wikipedia Combination
Спасибо, P.