Задача Код Грея

Файл входного файла: graycode.in
Файл выходного файла: graycode.out
Ограничение по памяти: 64 MB
Ограничение по времени: 2 s

Описание

Код Грея — система нумерования, в которой два соседних значения различаются только в одном разряде. Наиболее часто на практике применяется рефлексный двоичный код Грея. Такое название происходит от того факта, что вторая половина значений в коде Грея эквивалентна первой половине, только в обратном порядке, за исключением старшего бита, который просто инвертируется.Если же разделить каждую половину ещё раз пополам, свойство будет сохраняться для каждой из половин половины и т. д. Вот начало этого ряда:

    000 - 0
    001 - 1
    011 - 3
    010 - 2
    110 - 6
    111 - 7
    101 - 5
    100 - 4

Но последовательность может начинаться не только с нуля. Вот пример последовательности, начинающейся с 5:

    101 - 5
    100 - 4
    110 - 6
    111 - 7
    011 - 3
    010 - 2
    000 - 0
    001 - 1

Ваша задача найти N-ое число последовательности, начинающейся с числа K.

Формат входных данных

На первой строке входного файла находится число N (1 <= N <= 2 100000 ). На второй строке задано число K (0 <= K < 2 100000 )

Формат выходных данных

в выходной файл выведите одно число - ответ на задачу.

Примеры:

ввод вывод

1
0

0

4
5

7

Added: azonium
Difficulty: 2.87854446934
Accepted: 4
Submitted: 32
Автор: Журтбаев Азамат
Analyze this Discuss

Обсуждение:

Начать обсуждение:

Powered by django, eJudge.