题目描述
Jack和Pony分别是两股势力的头目,一直以来他们之间总是冲突不断。最近他们又开始了T轮
新的竞争,在每轮竞争中他们会进行多次的PK。在每轮竞争前他们的起始积分都为0,在每
次PK中,赢的一方会加2x积分,输的一方会加x积分(注:x为一个任意正整数)。然后针对
每轮竞争GM会给出两个值m; n,判断经过这轮的多次PK他们两个的积分是否能得到这两个值。
若能得到则输出“Yes”,若不能得到则输出“No”。
输入
输入包含T轮竞争(1 T 100)。每轮竞争输入两个整数m; n(1 m; n 10000000)。
输出
对于每轮竞争,若经过数次PK他们两人的积分能得到GM给出的值,则输出“Yes”,否则输出
“No”。
输入样例
3
10 5
121 123
12 100000
输出样例
Yes
No
No
#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int t,m,n,k;
cin>>t;
while(t--)
{
cin>>m>>n;
if(m>n)
{
k=m;
m=n;
n=k;
}
if(n<=2*m) //极限情况下,大的<=较小的二倍
{
if((m+n)%3==0) //之和必为三的倍数
{
cout<<"Yes"<<endl;
}
else
cout<<"No"<<endl;
}
else
cout<<"No"<<endl;
}
}