D-小牛vs小客——2018年全国多校算法寒假训练营练习比赛(第三场)
2018-02-05 10:34
267 查看
链接:https://www.nowcoder.net/acm/contest/75/D
来源:牛客网
题目描述
小牛和小客玩石子游戏,他们用n个石子围成一圈,小牛和小客分别从其中取石子,谁先取完谁胜,每次可以从一圈中取一个或者相邻两个,每次都是小牛先取,请输出胜利者的名字(小牛获胜输出XiaoNiu,小客获胜输出XiaoKe)(1 2 3 4 取走 2 13 不算相邻)
输入描述:
输入包括多组测试数据
每组测试数据一个n(1≤n≤1e9)
输出描述:
每组用一行输出胜利者的名字(小牛获胜输出XiaoNiu,小客获胜输出XiaoKe)
示例1
输入
2
3
输出
XiaoNiu
XiaoKe
[分析]
特别水。但是又想了很久,有一点改题的影响
先说答案,只要是1,2,4就是先手赢。
1和2是必胜局面,3因为只能走到1和2所以是必输局面(只能走到必胜局面的局面为必输局面)
故而4为必胜局面(能走到必输局面的局面为必胜局面)
以上是传统博弈论可以解释的,从5开始就不一样了,是这一题的特点。
博弈论的题目大多数的突破点都是“对称必输局面”
所以只要构成对称局面就可以了。
对称必输就好比2堆石头,你先手,你在一堆拿几个石头,我就在另一堆拿几个,不断模仿对手。最后一定能赢。
所以,在5之后,不论对手在哪个地方拿几个,都在圈对面去走适当的石头,使石头圈变成2个个数相同的并且不连续的石头堆,就构成了必输局面。
所以大于等于5先手必输。
[代码]
来源:牛客网
题目描述
小牛和小客玩石子游戏,他们用n个石子围成一圈,小牛和小客分别从其中取石子,谁先取完谁胜,每次可以从一圈中取一个或者相邻两个,每次都是小牛先取,请输出胜利者的名字(小牛获胜输出XiaoNiu,小客获胜输出XiaoKe)(1 2 3 4 取走 2 13 不算相邻)
输入描述:
输入包括多组测试数据
每组测试数据一个n(1≤n≤1e9)
输出描述:
每组用一行输出胜利者的名字(小牛获胜输出XiaoNiu,小客获胜输出XiaoKe)
示例1
输入
2
3
输出
XiaoNiu
XiaoKe
[分析]
特别水。但是又想了很久,有一点改题的影响
先说答案,只要是1,2,4就是先手赢。
1和2是必胜局面,3因为只能走到1和2所以是必输局面(只能走到必胜局面的局面为必输局面)
故而4为必胜局面(能走到必输局面的局面为必胜局面)
以上是传统博弈论可以解释的,从5开始就不一样了,是这一题的特点。
博弈论的题目大多数的突破点都是“对称必输局面”
所以只要构成对称局面就可以了。
对称必输就好比2堆石头,你先手,你在一堆拿几个石头,我就在另一堆拿几个,不断模仿对手。最后一定能赢。
所以,在5之后,不论对手在哪个地方拿几个,都在圈对面去走适当的石头,使石头圈变成2个个数相同的并且不连续的石头堆,就构成了必输局面。
所以大于等于5先手必输。
[代码]
#include<cstdio> int main() { long long n; while (scanf("%lld", &n) != EOF) { if (n == 1 || n == 2 || n == 4)printf("XiaoNiu\n"); else printf("XiaoKe\n"); } }
相关文章推荐
- nowcoder 2018年全国多校算法寒假训练营练习比赛(第三场)- 小牛vs小客
- 2018年全国多校算法寒假训练营练习比赛(第三场)小牛vs小客
- 2018年全国多校算法寒假训练营练习比赛(第三场)D 小牛vs小客 【简单博弈 + 图解】
- [ 牛客网 ] 2018年全国多校算法寒假训练营练习比赛(第三场)— D 小牛vs小客
- 牛客网NowCoder 2018年全国多校算法寒假训练营练习比赛(第三场)A.不凡的夫夫(斯特林公式) D.小牛vs小客 E.进击吧!阶乘(大数Java) G.大水题(数学)
- 2018年全国多校算法寒假训练营练习比赛(第三场)小牛再战
- 牛客网 2018年全国多校算法寒假训练营练习比赛(第三场) F 小牛再战(博弈)
- 2018年全国多校算法寒假训练营练习比赛(第三场) B 一个小问题【CRT 扩展中国剩余定理 板子题】
- 2018年全国多校算法寒假训练营练习比赛(第三场) A
- 2018年全国多校算法寒假训练营练习比赛(第三场)---I---题(皮克公式)
- 2018年全国多校算法寒假训练营练习比赛(第三场)题解 A-不凡的夫夫(斯特林定理的应用)
- 2018年全国多校算法寒假训练营练习比赛(第三场)E---进击吧!阶乘(Java代码,另附Java解决大数问题的模板)
- 牛客网 2018年全国多校算法寒假训练营练习比赛(第三场) A 不凡的夫夫(斯特灵公式)
- 2018年全国多校算法寒假训练营练习比赛(第三场)A 不凡的夫夫【斯特林公式】
- 2018年全国多校算法寒假训练营练习比赛(第三场)---B---题(线性同余定理)
- G-大水题——2018年全国多校算法寒假训练营练习比赛(第三场)
- 2018年全国多校算法寒假训练营练习比赛(第三场)F
- 2018年全国多校算法寒假训练营练习比赛(第三场) -A不凡的夫夫【附详尽的代码注释和斯特林公式介绍以及推导过程】
- 2018年全国多校算法寒假训练营练习比赛(第三场)题解 G 大水题(容斥定理)
- 2018年全国多校算法寒假训练营练习比赛(第三场)进击吧!阶乘 (大数阶乘)