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

Слоны на торовидной доске

Слоны на торовидной доске

Слон - это шахматная фигура, которая может передвигаться по диагонали на любое количество клеток. Представьте себе, что мы возьмем доску размером \textbf{m}х\textbf{n} и соединим ее верхний и нижний край, а также левый с правым, в результате чего доска примет форму тора. Например, для доски \textbf{7}×\textbf{10 }соседями клетки \textbf{(4, 1)} будут \textbf{(3, 10)}, \textbf{(3, 1)}, \textbf{(3, 2)}, \textbf{(4, 10)}, \textbf{(4, 2)}, \textbf{(5, 10)}, \textbf{(5, 1)}, \textbf{(5, 2)}; соседями клетки \textbf{(1, 10)} будут \textbf{(7, 9)}, \textbf{(7, 10)}, \textbf{(7, 1)}, \textbf{(1, 9)}, \textbf{(1, 1)}, \textbf{(2, 9)}, \textbf{(2, 10)}, \textbf{(2, 1)}. На торовидной доске шахматные фигуры не ограничены ее размерами, и например, на доске \textbf{7}×\textbf{10} слон может пойти из любой клетки в любую другую за один ход. Например, из клетки \textbf{(2, 1)} в клетку \textbf{(7, 9)} ведет путь \textbf{(2, 1) }→ \textbf{(1, 10) }→ \textbf{(7, 9)}. Будем говорить, что множество слонов покрывают доску, если всегда можно передвинуть какого-нибудь слона в любую пустую клетку за один ход. Другими словами, каждая клетка доски либо занята, либо находится под боем некоторого слона. Вам следует найти наименьшее количество слонов, которыми можно покрыть торовидную доску \textbf{m}×\textbf{n}. \InputFile Два числа \textbf{m} и \textbf{n} (\textbf{1 }≤ \textbf{n}, \textbf{m }≤ \textbf{10^100}). \OutputFile Вывести наименьшее количество слонов, которыми можно покрыть торовидную доску размера \textbf{m}×\textbf{n}.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
2 2
Выходные данные #1
2
Источник 2004 Петрозаводск, Лето, Контест Андрея Станкевича 7, Август 22, Задача I