初看这题,以为要用复杂的bfs或dfs,但看了某大神的解题报告后,才知道原来很简单。。
题目意思是最终谁先到达2001.11,4,就算赢。
可以操作的要么月份+1,要么日+1.。
而终点 是 11+4=15
那么 之前一个一定是偶数
所以如果开始为偶数时,则Adam一定走到的是奇数的,所以一定可以到达终点
但是还有几个特殊的 和为奇数,但是下一步确可以到达奇数的
为 9.30 ---10.1
11.30-----12.1
所以只要判断这些特殊点就可以了。。。
#include<iostream> using namespace std; int main() { int t,year,day,month; cin>>t; while(t--) { cin>>year>>month>>day; if(month==9&&day==30)cout<<"YES"<<endl; else if(month==11&&day==30)cout<<"YES"<<endl; else if((month+day)%2==0)cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }
作者:YYlxid 发表于2013-5-11 0:07:13 原文链接
阅读:0 评论:0 查看评论