Description

我们村子在过去的 400 年中, 断绝与下界的接触, 过着自给自足的生活。
夏至祭是一场迎接祖灵于夏季归来, 同时祈求丰收的庆典。
村里的男人会在广场上演出夏之军和冬之军的战争。 夏之军会打倒冬之军的大将冬男, 再放火将他连山车一起烧掉。
参与这场演出的一共有 N+M 位战士, 其中 N 个人是冬之军, M 个人是夏之军。
冬之军的大将冬男拥有改变季节的力量。 他每次可以任意选取恰好 K 名战士, 然后把这 K 个人中所有的夏之军变成冬之军, 所有的冬之军变成夏之军。
冬男可以使用任意多次改变季节的力量, 直到他将所有的人都变成了冬之军。
如果冬男将所有的人都变成了冬之军, 那么冬男就获得了胜利。
我想要知道, 对于给定的 N,M,K, 冬男是否有可能获得胜利。
神有时会降下神谕, 帮助你作出判断。

Input

第一行包括一个正整数 year, 表示进行夏至祭的年份。
第二行包括一个正整数 T, 表示数据的组数。
接下来 T 行, 每行三个非负整数 N,M,K, 每一行表示一组数据。 输入数据保证 K>0。

Output

共 T 行, 每行为一个字符串“Case x: S” , 不包含引号。
x 表示当前为第 x 组数据, 从 1 开始编号,
若冬男有可能获得胜利, S 为 Winter, 否则 S 为 Summer。

Sample Input

1924
9 2
0 3
2 1 4
2 6 3
100 5 12
7 6 10
6 6 10
1000000000000000000 1 2
500000000 500000000 987654321
1000000000 1000000000 987654321

Sample Output

Case 1: Winter
Case 2: Summer
Case 3: Winter
Case 4: Summer
Case 5: Winter
Case 6: Winter
Case 7: Summer
Case 8: Winter
Case 9: Winter

Hint

[测试题]神在夏至祭降下了神谕(oracle)-LMLPHP

[测试题]神在夏至祭降下了神谕(oracle)-LMLPHP

[测试题]神在夏至祭降下了神谕(oracle)-LMLPHP

[测试题]神在夏至祭降下了神谕(oracle)-LMLPHP

神谕 2: M 是奇数。
神谕 3: K 是奇数。
√表示对于这个测试点的所有 T 组数据, 神降下了神谕。
×表示对于这个测试点的所有 T 组数据, 神否定了神谕。
也就是说, 若神谕为“X 是奇数” , 则×表示“X 是偶数” 。
所有数据保证 K>0。
请注意特判 M=0, N+M<K 等特殊情况, 读入时请使用 long long 或 int64。

题解

我们先不妨将$m=m%k$,

那么为了有解,我们要将$m$加个数或者减个数,使得其模$k$为$0$,

我们假设有$x$个从$n$变成$m$,$y$个从$m$变成$n$。

那么就有

$$(m+x-y=k||m-x+y=0)&&x+y=k$$

那么只要解这两个方程组,判断有无整数解即可。

其实化简后就是判断$m$和$k$的奇偶性。

 #include<set>
#include<map>
#include<cmath>
#include<ctime>
#include<queue>
#include<stack>
#include<vector>
#include<cstdio>
#include<string>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
#define LL long long
using namespace std; int year,t;
LL n,m,k,rk; int main()
{
scanf("%d%d",&year,&t);
for (int ca=;ca<=t;ca++)
{
printf("Case %d: ",ca);
scanf("%lld%lld%lld",&n,&m,&k);
if (m%k==) printf("Winter\n");
else if (m+n<k) printf("Summer\n");
else if (m+n==k&&m!=) printf("Summer\n");
else
{
if (k%) rk=;
else rk=;
if (k>m&&(k-m)%rk==) printf("Winter\n");
else if (k<m&&(m-k)%rk==) printf("Winter\n");
else printf("Summer\n");
}
}
return ;
}
04-17 17:52