Ограничения: время – 200ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Лабиринт строится следующим образом.
Лабиринт L(`k`) имеет размер `2^k` и строится из 4 лабиринтов L(`k-1`). Две верхних части лабиринта L(`k`)
повторяют структуру L(`k-1`), часть в левом нижнем углу — структуру L(`k-1`), повернутого по часовой стрелке,
а часть в правом нижнем углу — структуру L(`k-1`), повернутого против часовой стрелки. На рисунке показаны
планы лабиринтов L(1), L(2), L(3).
Аня зашла в лабиринт, сделала несколько шагов и теперь не знает, где она находится.
Напишите программу, которая определяет координаты Ани в лабиринте по размеру лабиринта и количеству сделанных ею шагов.
Первая строка ввода содержит два целых числа `N` и `M` (`M\ ≤\ N^2`) – размеры лабиринта и количество шагов.
Число `N` является степенью числа 2.
Вывести два целых числа — координаты Ани в лабиринте.
Описание подзадач и системы оценивания
Подзадача 1 (50 баллов)
`2\ ≤\ N\ ≤\ 8`
В этой подзадаче 10 тестов, каждый тест оценивается в 5 баллов. Баллы за каждый тест начисляются независимо.
Подзадача 2 (50 баллов)
Необходимые подзадачи: 1.
`16\ ≤\ N\ ≤\ 32768`
В этой подзадаче 25 тестов, каждый тест оценивается в 2 балла. Баллы за каждый тест начисляются независимо.
По запросу сообщается результат окончательной проверки на каждом тесте для всех подзадач.