Формулировка задачи: для двух целых чисел t и l задайте двоичный код длины l, такой, чтобы у нас были биты со значением 1 на каждые (t-1) бит в постоянное время.
Например, учитывая t= 3 и l = 10, результат равен 1001001001.
Решение, которое я могу придумать, заключается в проведении некоторых сдвигов двоичного кода со значением 1:
A1=1
A2=A1>>3
A3=A1>>(3x2)
result=A1||A2||A3
Однако это решениене эффективен.
Я хочу решить эту проблему в постоянное время.