牛牛和牛可乐的赌约2
题目描述
牛牛感觉在上一次赌约中,情况对于自己非常不利,所以决定再赌一场。
这时候,牛蜓队长出现了:第一,绝对不意气用事;第二,绝对不漏判任何一件坏事;第三,绝对裁判的公正漂亮。
牛蜓队长带他们来到了一个棋盘游戏,棋盘左上角是(0,0),这个棋盘在(x,y)的位置有一个棋子,牛牛和牛可乐轮流移动这个棋子,这个棋子可以左移也可以上移,可以移动一格或者两格,直到不能再移动(即到(0,0))的那个人算输。
如果原本在(x,y),左移一格即为(x,y−1),上移一格即为(x−1,y)
这个时候,牛牛为了弥补上一局的不公平,决定要自己先手,如果两个人都用最优的策略,最后牛牛是否能获胜。
输入描述:
有多组输入样例,第一行为样例组数t
(
t
≤
1
×
1
0
6
)
(t\leq 1×10^6)
(t≤1×106)
接下来 tt 行每行有一个整数 x 和 y,分别表示初始位置
(
x
,
y
≤
1
×
1
0
9
)
(x,y\leq 1×10^9)
(x,y≤1×109)
输出描述:
输出t行,如果牛牛获胜,就输出”yyds”(不带引号)
否则输出”awsl”
示例1
输入
2
0 0
0 2
输出
awsl
yyds
题解: x-y的绝对值能整除3的,牛牛必输。
途中画叉的地方是牛牛必输的点。根据这个我们就可以将代码写出来了。
c++ AC 代码
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
int t;
ll x,y;
int main()
{
cin >> t;
while(t--)
{
cin >> x >> y;
if(!(abs(x-y)%3))
puts("awsl");
else
puts("yyds");
}
return 0;
}