描述

Adam和Eve玩一个游戏,他们先从1900.1.1到2001.11.4这个日期之间随意抽取一个日期出来。然后他们轮流对这个日期进行操作:

1 : 把日期的天数加1,例如1900.1.1变到1900.1.2

2 : 把月份加1,例如:1900.1.1变到1900.2.1

其中如果天数超过应有天数则日期变更到下个月的第1天。月份超过12则变到下一年的1月。而且进行操作二的时候,如果有这样的日期:1900.1.31,则变成了1900.2.31,这样的操作是非法的,我们不允许这样做。而且所有的操作均要考虑历法和闰年的规定。

谁先将日期变到2001.11.4谁就赢了。

每次游戏都是Adam先操作,问他有没有必胜策略?

格式

输入格式

一个测试点。多组数据。

第一行为数据组数。

接下来一行X Y Z表示X年Y月Z日

输出格式

输出“YES”or“NO”表示亚当是否有必胜策略。

样例1

样例输入1[复制]

 
3
2001 11 3
2001 11 2
2001 10 3

样例输出1[复制]

 
YES
NO
NO

提示

建议先把所有情况都算出来^_^

题意:每次可以使月份或日期增加1,从1900.1.1开始,到达2001.11.4则胜利。问谁能必胜。

思路:题目提示都说了打表,找规律可知月份+日期是偶数则为先手必胜态,除此之外还要特判1.30 9.30 11.30的特殊情况,因为能从N态转到P态.

/** @Date    : 2016-12-13-21.46
* @Author : Lweleth (SoungEarlf@gmail.com)
* @Link : https://github.com/
* @Version :
*/
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <algorithm>
#include <utility>
#include <vector>
#include <map>
#include <set>
#include <string>
#include <stack>
#include <queue>
//#include<bits/stdc++.h>
#define LL long long
#define PII pair<int ,int>
#define MP(x, y) make_pair((x),(y))
#define fi first
#define se second
#define PB(x) push_back((x))
#define MMG(x) memset((x), -1,sizeof(x))
#define MMF(x) memset((x),0,sizeof(x))
#define MMI(x) memset((x), INF, sizeof(x))
using namespace std; const int INF = 0x3f3f3f3f;
const int N = 1e5+20;
const double eps = 1e-8; int main()
{
int x, y, z;
int n;
cin >> n;
while(n--)
{ cin >> x >> y >> z; if(y == 1 && z == 30)//
printf("YES\n");
else if(y == 9 && z == 30)//
printf("YES\n");
else if(y == 11 && z == 30)//
printf("YES\n");
else if( (y + z) % 2 == 0)
printf("YES\n");
else printf("NO\n"); }
return 0;
}

最新文章

  1. xwalk_core_library-15.44.384 .13.aar 百度云分享
  2. XCode6 生成prefix.pch文件
  3. PAT 1009. 说反话 (20)
  4. ytkah网站建设解决方案 大中小微企业营销利器
  5. Yii2.0 执行流程分析
  6. Leetcode 之Construct Binary Tree(52)
  7. kuangbin_UnionFind B (POJ 1611)
  8. ASP.NET MVC之Html.RenderAction
  9. fedora 非root用户访问socket 没用权限
  10. Linux kernel AACRAID Driver Compat IOCTL 本地安全绕过漏洞
  11. php 解决大流量网站访问量问题
  12. java 配置及安装Eclipse
  13. [Angular Directive] Implement Structural Directive Data Binding with Context in Angular
  14. 运维面试题之k8s
  15. (转)并发编程 – Concurrent 用户指南
  16. PhoenixFD插件流体模拟——UI布局【Rendering】详解
  17. L2范数的相关求解
  18. 用kafka实现消息推送
  19. [jQuery]循环遍历改变a标签的href
  20. MT【257】任意存在并存

热门文章

  1. POJ 3714 Raid(计算几何の最近点对)
  2. Python中的Dictionary
  3. Catch That Cow(BFS广搜)
  4. jquery.validate 中文乱码解决方法
  5. array_intersect_assoc 与array_intersect区别
  6. ifstat查看网络流量的原理
  7. MAC锁屏不断网(快捷键启用屏保)
  8. 在临床医学里面,bid、tid、qid和q3w是什么意思啊??这些缩写的全称是怎么写呢??
  9. Windows 8.1 SecureBoot未正确配置的解决方法
  10. matlab imwrite