Олимпиадный тренинг

Задача . C. Многоугольник для угла


Вам задан угол \(\text{ang}\).

Жюри просит Вас найти такой правильный \(n\)-угольник (правильный многоугольник из \(n\) вершин), что у него найдутся три вершины \(a\), \(b\) и \(c\) (не обязательно последовательные) с углом \(\angle{abc} = \text{ang}\) или сообщить, что такого \(n\)-угольника не существует.

Если существует несколько ответов, выведите наименьший из них. Гарантируется, что если ответ существует, то он не превосходит \(998244353\).

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

Первая строка содержит единственное целое число \(T\) (\(1 \le T \le 180\)) — количество запросов.

Следующие \(T\) строк содержат по одному целому числу \(\text{ang}\) (\(1 \le \text{ang} < 180\)) — заданный угол в градусах.

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

Для каждого запроса выведите по одному целому числу \(n\) (\(3 \le n \le 998244353\)) — наименьшее возможное число вершин в подходящем правильном \(n\)-угольнике либо \(-1\), не такого \(n\) не существует.

Примечание

Ответ для первого запроса изображен на изображении выше.

Ответ для второго запроса достигается на правильном \(18\)-угольнике. Например, \(\angle{v_2 v_1 v_6} = 50^{\circ}\).

Возможный угол для третьего запроса — \(\angle{v_{11} v_{10} v_{12}} = 2^{\circ}\).

В четвертом запросе, минимальный возможный \(n\) равен \(180\) (но не \(90\)).


Примеры
Входные данныеВыходные данные
1 4
54
50
2
178
10
18
90
180

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя