eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Двійкові паліндроми

Двійкові паліндроми

Ваша задача – знайти найменший двійковий паліндром не менше числа n. Двійковий паліндром – це число, яке у двійковій системі числення читається справа наліво і зліва направо однаково. Наприклад, числа 5, 7, 9, 21 – є двійковими паліндромами, а числа 4, 10, 11 – ні.

Вхідні дані:

В першому рядку вводиться число: n.

Вихідні дані:

В єдиному рядку потрібно вивести найменший двійковий паліндром не менше числа n.

Оцінювання:

40% - n ≤ $10^5$

60% - n ≤ $10^{18}$

Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
8
Вихідні дані #1
9
Вхідні дані #2
21
Вихідні дані #2
21
Вхідні дані #3
77
Вихідні дані #3
85