[测试题]神在夏至祭降下了神谕(oracle)
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




神谕 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 ;
}
[测试题]神在夏至祭降下了神谕(oracle)的更多相关文章
- 神在夏至祭降下了神谕(oracle)
		
首先这道题样例很多,先一个一个看 我们发现k为奇数是必为winter,其实可以证明 k为奇数时,k=a+(a+1)意味着可以直接实现winter士兵+1,summer士兵-1 k为偶数时,显然当m也为 ...
 - JZOJ 4738. 神在夏至祭降下了神谕 DP + 线段树优化
		
4738. 神在夏至祭降下了神谕 Time Limits: 1000 ms Memory Limits: 262144 KB Detailed Limits Goto ProblemSet D ...
 - 常州模拟赛d3t1 神在夏至祭降下了神谕
		
题目描述 我们村子在过去的400年中,断绝与下界的接触,过着自给自足的生活. 夏至祭是一场迎接祖灵于夏季归来,同时祈求丰收的庆典. 村里的男人会在广场上演出夏之军和冬之军的战争.夏之军会打倒冬之军的大 ...
 - Solaris 10下Qt编译Oracle 10g驱动
		
上回书讲到<Oracle 10g在Solaris 10中安装详解>,现在开始用Qt来编译下Oracle 10g驱动吧!这样就可以通过Qt程序联入Oracle数据库了! Oracle的环境变 ...
 - Linux下的启动oracle的EM的命令
		
Linux下的启动oracle的EM的命令 1.启动数据库 su - oracle $sqlplus / as sysdba sql>startup 2.启动监听 $lsnrctl LSNRCT ...
 - Linux下自动备份Oracle数据库并删除指定天数前的备份
		
说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用 ...
 - [转帖]Windows 下如何配置Oracle ASM???
		
Windows 下如何配置Oracle ASM??? candon123关注10人评论16725人阅读2011-02-09 21:40:57 本篇介绍了如何在windows下创建裸设备,并创建AS ...
 - csps模拟67神炎皇,降雷皇,幻魔皇题解
		
题面:https://www.cnblogs.com/Juve/articles/11648975.html 神炎皇: 打表找规律?和$\phi$有关? 答案就是$\sum\limits_{i=2}^ ...
 - Aix/Linux下自动备份oracle数据库
		
曾经有个同事,来回操作开发和生产的数据库,结果误删了生产的数据库,那种心情我想不是一般人能理解的,虽然说oracle可以有方法还原,但并不是彻底的. 所以,在工作中,不管是开发还是维护,备份数据库是非 ...
 
随机推荐
- Python数据增强(data augmentation)库--Augmentor 使用介绍
			
Augmentor 使用介绍 原图 random_distortion(probability, grid_height, grid_width, magnitude) 最终选择参数为 p.rando ...
 - C语言程序设计(基础)- 第14、15周作业
			
从本周开始,将作业标记为学校自然周,而不是开课的周数. 要求一(25经验值) 完成14.15周的所有PTA中题目集. 注意1:一周两次pta作业,包括四次. 要求二(50经验值) 博客的具体书写内容和 ...
 - C第九次博客作业--指针
			
一.PTA实验作业 题目1:两个4位正整数的后两位互换 1. 本题PTA提交列 2. 设计思路 3.代码截图 本题调试过程碰到问题及PTA提交列表情况说明 刚开始想到的交换是令t=a;a=b;b=t这 ...
 - 20162308 实验二《Java面向对象程序设计》实验报告
			
20162308 实验二<Java面向对象程序设计>实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 ...
 - Beta预备
			
团队名称:稳住!我们能赢 Beta预备: 讨论组长是否重选的议题和结论 项目组长可以说是一个团队的灵魂和核心.一个好的领导者可以激发团队成员的工作热情,提高开发效率,保质保量的完成工作.虽然在Alph ...
 - css3动画 一行字鼠标触发 hover 从左到右颜色渐变
			
偶然的机会发现的这个东东 这几天做公司的官网 老板突然说出了一个外国网站 我就顺手搜了 并没有发现他说的高科技 但是一个东西深深地吸引了我 就是我下面要说的动画 这个好像不能放视频 我就简单的描述一 ...
 - Sudoku 第一步
			
看到这个问题的思路是先解决生成数独生成器的编写,然后再解决数独求解的问题.最开始第一想法就是暴力求解,仔细算一下复杂度,发现这肯定耗时很久,于是看了很多博客(见转载).我们用回溯搜出来正解.
 - vue-入门
			
数据绑定 <!--步骤1:创建html文件--> <!DOCTYPE html> <html lang="en"> <head> ...
 - Python内置函数(65)——staticmethod
			
英文文档: staticmethod(function) Return a static method for function. A static method does not receive a ...
 - php最新版本配置mysqli
			
从官网上下载php后(我下的是php7.2.3版本),本想做个mysql的连接,但是无论怎么配置mysqli扩展,发现mysqli都没法用. 从百度上搜的那些方法都没法用,发现都是一些在php.ini ...