Feedback | If you notice incorrect translations in Contester, please let author know.
|
|
Time limit 2000/4000/4000/4000 ms. Memory limit 65000/65000/65000/65000 Kb.
На вход алгоритму подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописывается справа бит чётности : 0, если в двоичном коде числа N было чётное число единиц, и 1, если нечётное.
3) К полученному результату дописывается ещё один бит чётности.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Напишите функцию, которая определяет максимальное число R, меньшее K,
которое может быть получено в результате работы этого алгоритма.
Пример: K = 125, R = 120.
Входные данные: 125 Выходные данные: 120
Для отправки решений необходимо выполнить вход.
|