Последовательность Баум-Сладкий (A086747 с изюминкой)
Возьмите положительное целое число n
и выведите целые числа от 1 до n, для которых последовательность Baum-Sweet возвращает true. Последовательность Баума-Сладкого должна возвращать ложь, если двоичное представление числа содержит нечетное число последовательных нулей в любом месте числа, и верно в противном случае. Для получения дополнительной информации, нажмите на ссылку. Вот пара примеров:
1 -> 1 -> Truthy
2 -> 10 -> Falsy
3 -> 11 -> Truthy
4 -> 100 -> Truthy (Even run of zeros)
Вот пример n=32
Шаг 1: последовательность Baum-Sweet, визуализированная для n=32
1 1 (1)
1 0 0 (2)
11 1 (3)
1 00 1 (4)
1 0 1 0 (5)
11 0 0 (6)
111 1 (7)
1 000 0 (8)
1 00 1 1 (9)
1 0 1 0 0 (10)
1 0 11 0 (11)
11 00 1 (12)
11 0 1 0 (13)
111 0 0 (14)
1111 1 (15)
1 0000 1 (16)
1 000 1 0 (17)
1 00 1 0 0 (18)
1 00 11 1 (19)
1 0 1 00 0 (20)
1 0 1 0 1 0 (21)
1 0 11 0 0 (22)
1 0 111 0 (23)
11 000 0 (24)
11 00 1 1 (25)
11 0 1 0 0 (26)
11 0 11 0 (27)
111 00 1 (28)
111 0 1 0 (29)
1111 0 0 (30)
11111 1 (31)
1 00000 0 (32)
Итак, после вычисления последовательности Баума-Свита для n, возьмите числа, которые были правдивыми для последовательности, и соберите их для конечного результата. Ибо n=32
мы бы имели:
[1, 3, 4, 7, 9, 12, 15, 16, 19, 25, 28, 31]
В качестве окончательного ответа.
Это код-гольф , выигрывает самый короткий счетчик байтов.