首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

(step8.2.5)hdu 1847(Good Luck in CET-四 Everybody!——巴什博弈)

2013-11-09 
(step8.2.5)hdu 1847(Good Luck in CET-4 Everybody!——巴什博弈)题目大意:输入一个整数n,表示有的牌数。判

(step8.2.5)hdu 1847(Good Luck in CET-4 Everybody!——巴什博弈)

题目大意:输入一个整数n,表示有的牌数。判断是Kiki赢,还是Cici赢。


解题思路:巴什博奕

1)咋一看,这道题很像巴什博奕(因为都是从一堆石头n中最多能选择m个石头),但觉得又不像巴什博奕(因为在典型的巴什博奕问题中m是固定的,而不是像现在

这样,是2的次幂数就行。)。其实2的2次幂以后的都可以是2的倍数。因为我们完全可以将这道题的m理解为2.这样就可以转化成

典型的巴什博奕问题了

2)还有的大神是通过列表来找规律的

0    1    2    3    4    5    6    7   8   9.........

P    N    N    p    N    N    p   N    N   P........可以看出,所有3的倍数都是P状态的。。。


代码如下:

/* * 1847_1.cpp * *  Created on: 2013年9月1日 *      Author: Administrator */#include <iostream>using namespace std;int main(){int n;while(scanf("%d",&n)!=EOF){if(n % 3 == 0 ){printf("Cici\n");}else{printf("Kiki\n");}}}




热点排行