【Fancy Fence】【CodeForces - 270A 】(思维水题)

版权声明:本人原创,未经许可,不得转载 https://blog.csdn.net/qq_42505741/article/details/84171030

题目:

Emuskald needs a fence around his farm, but he is too lazy to build it himself. So he purchased a fence-building robot.

He wants the fence to be a regular polygon. The robot builds the fence along a single path, but it can only make fence corners at a single angle a.

Will the robot be able to build the fence Emuskald wants? In other words, is there a regular polygon which angles are equal to a?

Input

The first line of input contains an integer t (0 < t < 180) — the number of tests. Each of the following t lines contains a single integer a (0 < a < 180) — the angle the robot can make corners at measured in degrees.

Output

For each test, output on a single line "YES" (without quotes), if the robot can build a fence Emuskald wants, and "NO" (without quotes), if it is impossible.

Examples

Input

3
30
60
90

Output

NO
YES
YES

Note

In the first test case, it is impossible to build the fence, since there is no regular polygon with angle .

In the second test case, the fence is a regular triangle, and in the last test case — a square.

解题报告:一开始想着是用暴力将所有的角度存起来,后来发现根本不现实,因为无论咋咋求解最后都会存在偏差,可能是初等数学存在漏洞,没有想到这一点,就是如何构成一个一个角度为x的多边形,x需要满足什么样的条件呢,就是360%(180-x)==0 。 掌握这个公式,这道题目就是水题,找不出就是卡题。

ac代码:
 

#include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

int main()
{
	int n,x;
	scanf("%d",&n);
	while(n--)
	{
		scanf("%d",&x);
		if(360%(180-x)==0)
			printf("YES\n");
		else
			printf("NO\n");
	}
}

猜你喜欢

转载自blog.csdn.net/qq_42505741/article/details/84171030