Загрузка [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

printРабочее место участника

printЗадачи

2431. Прогулка в лабиринте

Ограничения: время – 200ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Лабиринт строится следующим образом. Лабиринт L(k) имеет размер 2k и строится из 4 лабиринтов L(k-1). Две верхних части лабиринта L(k) повторяют структуру L(k-1), часть в левом нижнем углу — структуру L(k-1), повернутого по часовой стрелке, а часть в правом нижнем углу — структуру L(k-1), повернутого против часовой стрелки. На рисунке показаны планы лабиринтов L(1), L(2), L(3).

39833.png

Аня зашла в лабиринт, сделала несколько шагов и теперь не знает, где она находится. Напишите программу, которая определяет координаты Ани в лабиринте по размеру лабиринта и количеству сделанных ею шагов.
Первая строка ввода содержит два целых числа N и M (M ) – размеры лабиринта и количество шагов. Число N является степенью числа 2.
Вывести два целых числа — координаты Ани в лабиринте.

Пример ввода 1

4 10

Пример вывода 1

3 4

Пример ввода 2

8 19

Пример вывода 2

2 6
Описание подзадач и системы оценивания
Подзадача 1 (50 баллов)
2\ ≤\ N\ ≤\ 8
В этой подзадаче 10 тестов, каждый тест оценивается в 5 баллов. Баллы за каждый тест начисляются независимо.
Подзадача 2 (50 баллов)
Необходимые подзадачи: 1.
16\ ≤\ N\ ≤\ 32768
В этой подзадаче 25 тестов, каждый тест оценивается в 2 балла. Баллы за каждый тест начисляются независимо.
По запросу сообщается результат окончательной проверки на каждом тесте для всех подзадач.
loading