此题是一个思维题,可以看出题目的条件是比较苛刻的,可以通过模拟来得出满足的组合是很有限的,可以在小数内反复尝试得出答案,有一个办法可以将最大的周期是作一个区间,那我们的目标就是在每一个区间内将数给填满,其他两个周期也是做一个区间,可以进行模拟来观察
#include<iostream>
using namespace std;
int main()
{
小红有三个周期性的集合,他们的周期分别是a,b,c,周期为a代表的集合为{x2+n∗a∣n=0,1,2,...},周期为b代表的集合为{x2+n∗b∣n=0,1,2,...},周期为c代表的集合为{x3+n∗c∣n=0,1,2,...}。
求现在是否存在一组x1,x2,x3,可以使得这三个集合可以组成大于等于max{x1,x2,x3}的所有自然数。如果可以输出YSE,反之输出NO
第一行输入一个整数 t(1≤t≤10)表示测试数据数量。
每组数据的第一行三个整数a,b,c(1≤a,b,c≤1500)。
每组数据输出一行,如果可以输出YSE,反之输出NO
输入
3
4 3 10
6 3 6
2 2 2
输出
NO
NO
YES