Ранговые и неиспользуемые цепочки Фибоначчи с заданной суммой - PullRequest
0 голосов
/ 23 июня 2019

Я хочу ранжировать (отображая последовательность битов в число) и отменять (отображать ранг последовательность битов) битовую последовательность Фибоначчи.

Что такое битовая последовательность Фибоначчи?

Каждое натуральное число x можно описать как суммирование различных чисел Фибоначчи. Битовая последовательность Фибоначчи описывает, какое число Фибоначчи используется для окончательного суммирования x. A set bit или 1 в битовой последовательности Фибоначчи выбирает соответствующее число Фибоначчи. Пример 00101 означает F2 + F4 = 1 + 3 = 4.

Например, для числа 39 мы имеем следующие действительные битовые последовательности Числа Фибоначчи за битовой последовательностью в этом примере следующие:

0,1,1,2,3,5,8,13,21,34

0000010001 k = 2 r = 0

0000010110 k = 3 r = 0

0001100001 k = 3 r = 1

0001100110 k = 4 r = 0

0001111010 k = 5 r = 0

0110100110 k = 5 r = 1

0110111010 k = 6 r = 0

Итак, у нас есть следующие параметры:

n представляющее число

k количество единиц в битовой последовательности

r ранг в подмножестве, описанный n и r.

Как мне сделать ранжирование с параметрами n,k,r? Существует ли для этого алгоритм?

...