Codeforce 270A - Fancy Fence (正多邊形)
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
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.
OutputFor 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.
3output
30
60
90
NONote
YES
YES
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.
題解:看是否能構成正多邊形
1 #include <iostream> 2#include <algorithm> 3 #include <cstring> 4 #include <cstdio> 5 #include <vector> 6 #include <cstdlib> 7 #include <iomanip> 8 #include <cmath> 9 #include <ctime> 10 #include <map> 11 #include <set> 12 using namespace std; 13 #define lowbit(x) (x&(-x)) 14 #define max(x,y) (x>y?x:y) 15 #define min(x,y) (x<y?x:y) 16 #define MAX 100000000000000000 17 #define MOD 1000000007 18 #define pi acos(-1.0) 19 #define ei exp(1) 20 #define PI 3.141592653589793238462 21 #define INF 0x3f3f3f3f3f 22 #define mem(a) (memset(a,0,sizeof(a))) 23 typedef long long ll; 24 const int N=1005; 25 const int mod=1e9+7; 26 int main() 27 { 28 std::ios::sync_with_stdio(false); 29 int t; 30 cin>>t; 31 while(t--){ 32 int n; 33 cin>>n; 34 if(360%(180-n)==0) cout<<"YES"<<endl; 35 else cout<<"NO"<<endl; 36 } 37 return 0; 38 }
Codeforce 270A - Fancy Fence (正多邊形)