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

Битовый автомат

Битовый автомат

Ральф нашёл новое оружие - битовый автомат! Этот автомат стреляет очередями бит, причем первый выстреленный бит наносит цели урон 1, а каждый следующий бит наносит цели урон в два раза больший, чем предыдущий.

Этот автомат пришёлся как нельзя кстати, когда на Ральфа внезапно обрушилось полчище кибер-жуков. Стреляя в жука, Ральф замечает, какие биты попали в цель, а какие нет. К несчастью, за годы тяжелой работы наш герой изрядно испортил себе зрение, и поэтому может распознать траекторию движения одного из бит неверно. В связи с этим реальный и замеченный Ральфом урон могут различаться. Зная количество выстреленных бит и предполагаемый урон помогите Ральфу узнать, какой минимальный и максимальный реальный урон мог быть нанесен кибер-жуку.

Входные данные

В первой строке находится два числа n и a (1n63, 0a2n - 1) - количество бит в коде и предполагаемый урон соответственно.

Выходные данные

Выведите два числа: минимальный и максимальный возможный реальный урон, если учесть, что Ральф мог допустить ошибку в распознании результата выстрела в не более чем одном бите. Известно, что 0aminamax2n - 1.

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
3 5
Выходные данные #1
1 7
Входные данные #2
5 0
Выходные данные #2
0 16
Источник 2018 Цикл Интернет-олимпиад для школьников, вторая командная олимпиада сезона, базовая номинация, 10 ноября, Задача C