4984.猫罐头游戏

时间限制:1s 内存限制:256MB

小小猫和勇者猫比赛吃猫罐头。

总共有 $3$ 堆猫罐头,两猫轮流吃猫罐头,小小猫先手。每次可以选择 $2$ 堆猫罐头,将其中$1$ 堆吃光,然后把剩下 $1$ 堆分成 $2$ 堆,且必须保证这 $2$ 堆猫罐头的数量都大于 $0$. 无法操作者输。

假设小小猫和勇者猫都足够聪明且都希望获胜,小小猫(先手)想知道它是否有必胜策略。

输入格式(从终端/标准输入读取)

第一行一个正整数 $T(1≤T≤100)$,表示测试用例组数。

接下来 $T$ 行,每行三个正整数 $a,b,c$,分别表示 $3$ 堆猫罐头的初始数量,用空格隔开。其中 $1≤a,b,c≤10^4$.

输出格式(输出至终端/标准输出)

共 $T$ 行:对每组测试用例,输出一行一个字符串“YES”或“NO”,表示小小猫(先手)是否有必胜策略(是输出“YES”,否输出“NO”)

输入样例

复制
4
1 1 1
1 2 1
1 2 3
8 9 10
 \n
 · · \n
 · · \n
 · · \n
 · ·  \n

输出样例

复制
NO
YES
YES
YES
  \n
   \n
   \n
   \n

说明

第一组数据,$a=b=1$,先手已经无法操作。

第二组和第三组数据,先手选择 $b$ 和 $c$ ,将 $c$ 取走,将 $b=2$ 分成 $b=1$ 和 $c=1$ ,则局面变成 $a=b=c=1$ ,先手胜利。

来源: 2024“钉耙编程”中国大学生算法设计超级联赛(5)

提交题解

Please login first.

© 2025 FAQs