Случайно выбрать k бит из n из Java BitSet

Как правильно выбратьk биты отJava BitSet длиныm сn биты включены, гдеk≤n≤m?

Пример ввода:m=20, n=11

Пример вывода:k=3

Наивный подход

Выберите случайное число0≤ i ≤ m-1. если он включен на входе и не включен на выходе, включите его на выходе, покаk биты включены на выходе.

Этот подход не работает, когдаn намного меньше, чемm. Есть другие идеи?

Ответы на вопрос(4)

Ваш ответ на вопрос