N выберите r возможностей как увеличение двоичных чиселPython

Программы на Python
Гость
N выберите r возможностей как увеличение двоичных чисел

Сообщение Гость »

Я ищу функцию, которая вводит (n,r) и выводит все способы, с помощью которых мы можем выбрать r объектов из строки из n объектов. Более того, мне бы хотелось, чтобы этот список представлял собой возрастающую двоичную последовательность.
Например:
(5,2)
выведет: [00011,00101,00110,01001,01010,01100,10001,10010,10100,11000]
Я пытался сделать это, рассматривая крайний правый 1 и проверяем, может ли он «двигаться влево, не врезаясь в другую 1». Если не может, то я перехожу к следующему 1 и проверяю то же самое. Если любую из единиц можно «переместить влево», каждая единица справа от нее будет «сброшена».
Хотя мой код не работал, пытаясь использовать этот метод.
Хотя мой код не работал, пытаясь использовать этот метод.
р>

Подробнее здесь: https://stackoverflow.com/questions/787 ... ry-numbers

Вернуться в «Python»