hd2147 kiki's game
2015-07-27 15:54
232 查看
kiki'sgame
TimeLimit:5000/1000MS(Java/Others)MemoryLimit:40000/10000K(Java/Others)TotalSubmission(s):8036AcceptedSubmission(s):4776
[align=left]ProblemDescription[/align]
Recentlykikihasnothingtodo.Whilesheisbored,anideaappearsinhismind,shejustplayesthecheckerboardgame.Thesizeofthechesserboardisn*m.Firstofall,acoinisplacedinthetoprightcorner(1,m).Eachtimeone
peoplecanmovethecoinintotheleft,theunderneathortheleft-underneathblankspace.Thepersonwhocan'tmakeamovewilllosethegame.kikiplaysitwithZZ.Thegamealwaysstartswithkiki.Ifbothplayperfectly,whowillwinthegame?
[align=left]Input[/align]
Inputcontainsmultipletestcases.Eachlinecontainstwointegern,m(0<n,m<=2000).Theinputisterminatedwhenn=0andm=0.
Output
Ifkikiwinsthegameprintf"Wonderful!",else"Whatapity!".
[align=left]SampleInput[/align]
53 54 66 00
SampleOutput
Whatapity! Wonderful! Wonderful!
题目大意就是给两个数n和m,代表一n*m的棋盘,kiki先下,从棋盘的右上角开始,只能往下方,左方,左下方走棋,最后谁无路可走谁输,双方都非常聪明,问在这样一个n*m的棋盘里kiki最后是输还是赢。
例如在一个5*6的棋盘里,P代表必败点,N代表必胜点,可以通往必败点的都是必胜点,只能通往必胜点的就是必败点。
P | N | P | N | P | N |
N | N | N | N | N | N |
P | N | P | N | P | N |
N | N | N | N | N | N |
P | N | P | N | P | N |
然后就会发现当n和m都为奇数时必败,其他情况都必胜
听说这个属于传说中的博弈哎
#include<cstdio>
intmain()
{
intn,m;
while(scanf("%d%d",&n,&m)&&(n||m))
{
if((n&1)&&(m&1))printf("Whatapity!\n");
elseprintf("Wonderful!\n");
}
return0;
}
相关文章推荐
- 查看硬件信息
- 直方图均衡化原理
- 【HDU】5298 Solid Geometry Homework【暴力+二分图】
- RHEL 6.5安装DRBD
- Linux_LVM Couldn't find device with uuid
- JSVC启动Tomcat
- javaWeb-mvc之利用c3p0写入数据库出现乱码
- python基础教程总结15——3 XML构建网址
- AndroidManifest.xml -【manifest】
- Android New Relic 4.244 Agent 安装问题
- 四层负载均衡和七层负载均衡的区别
- [Tue, 21 Jul 2015 ~ Mon, 27 Jul 2015] Deep Learning in arxiv
- 浅谈Linux进程
- mysql 分组后取每个组内最新的一条数据
- 在服务器上运行Jar包
- 百度地图API(二)
- 浅谈Linux进程
- hdu 1398 Square Coins (母函数)
- Oracle中的延迟块的清除方法
- orachk现在软件里面都已经内置了