CF1096C Polygon for the Angle

题目描述

给定一个角度 $\text{ang}$。 评测人员要求你找到一个正 $n$ 边形(即有 $n$ 个顶点的正多边形),使得存在三个顶点 $a$、$b$、$c$(它们可以不是相邻的),满足 $\angle{abc} = \text{ang}$,或者报告不存在这样的 $n$ 边形。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1096C/a07369ed7e451bdcca3873a15baacc5b09a55799.png) 如果有多个答案,请输出最小的 $n$。保证如果答案存在,则 $n$ 不会超过 $998244353$。

输入格式

第一行包含一个整数 $T$($1 \le T \le 180$),表示询问的数量。 接下来的 $T$ 行,每行包含一个整数 $\text{ang}$($1 \le \text{ang} < 180$),表示角度,单位为度。

输出格式

对于每个询问,输出一个整数 $n$($3 \le n \le 998244353$),表示正 $n$ 边形的最小可能顶点数。如果不存在这样的 $n$,输出 $-1$。

说明/提示

第一组询问的答案如上图所示。 第二组询问的答案是正 $18$ 边形。例如,$\angle{v_2 v_1 v_6} = 50^{\circ}$。 第三组询问的例子为 $\angle{v_{11} v_{10} v_{12}} = 2^{\circ}$。 第四组询问,最小可能的 $n$ 是 $180$(不是 $90$)。 由 ChatGPT 4.1 翻译