1811 玩游戏
Submit solution
Points:
100
Time limit:
2.0s
Memory limit:
32M
Problem types
Allowed languages
C, C++, Java, Python
Description
Elly 和 Kriss 玩一种游戏.
这种游戏在一个1*N的长条格子上进行。我们把这个长条叫做board. board上的格子从左往右用0~N-1编号. board上的格子要么是空的,要么有一个checker. Elly和Kriss轮流动作, 直到有个人不能动. 谁不能动谁输. 一个动作表示:当前游戏者选择其中一个checker,然后选择下面步骤中的一个:
1,往右跳1格。但是要求目标格子是空的。(即从i前进到i+1,要求i+1是空格子)
2,往右跳3格。但是要求目标格子是空的。越过的两个格子必须有checker占据着。(即从i跳到i+3,要求i+1,i+2是checker,i+3是空的)
3,往右跳7格。但是要求目标格子是空的。越过的六个格子必须有checker占据着。
checker不能跳出到board的外部。
一旦一个checker到达board的最右边(编号N-1的格子),那么它被立即取走,扔了。。。
board的初始局面用一个字符串s表示,s只包含'.'(空的)和'o'(一个checker)。
现假设Elly和Kriss都使用最佳策略,问先手是否能够必胜。
Input
多组数据。每组数据一个字符串,长度在[1, 40]内,保证最后一个字符是'.'。
Output
先手必胜输出YES, 否则NO。
Sample
Input
.o.
.o...
...
.o...ooo..oo..
......o.ooo.o......
o.o...o.o...o.o.
Output
Case 1: YES
Case 2: YES
Case 3: NO
Case 4: NO
Case 5: YES
Case 6: NO
Source: zjut_DD
Comments