问题描述
jrMz有两种角,第一种角都是正n边形的内角,第二种角都是正m边形的内角。jrMz想选出其中一些,某种角可以选多个或一个都不选,使得选出的所有角的度数之和恰好为360度。jrMz想知道这是否可能实现。
输入描述
有多组测试数据,第一行一个整数(1≤T≤10),表示测试数据的组数。 对于每组测试数据,仅一行,两个整数n,m(3≤n,m≤100),之间有一个空格隔开。
输出描述
对于每组测试数据,仅一行,一个字符串,若可能实现则为Yes,若不可能实现则为No。
输入样例
3 4 8 3 10 5 8
输出样例
Yes Yes No
Hint
第一组数据中,jrMz可以选择1个第一种角和2个第二种角,因为90+135+135=360。 第二组数据中,jrMz可以选择6个第一种角,因为6×60=360。 第三组数据中,jrMz无法选出一些度数之和为360度的角。
#include <iostream>
using namespace std;
int T;
int i,j;
int v;
int main()
{
int n,m;
cin>>T;
while(T--)
{
v=0;
cin>>n>>m;
for(i=0; i<=n+3; i++)
{
for(j=0; j<=m+3;j++)
{
if((i*(n-2)*180/n+j*(m-2)*180)==360)
v=1;
}
}
if(v==1)
cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}
内角和定理: 正多边形内角和定理n边形的内角的和等于: (n - 2)×180°(n大于等于3且n为整数)