《学霸》中的博弈论

模型:Tom 和 Bob 玩取石子游戏,有(n)个石子,每次每人能取(1)个或(2)个,两人轮流取,Tom 先手,将石子取完的那个人输。求两人在最优决策下,Tom 是否能赢。

(f(n))表示在剩余(n)个式子下先手能不能赢,假设(f(n) = 0)代表先手不能赢,(f(n) = 1)代表先手能赢。

初始化:(f(1) = 0,f(2) = 1)

递推式:

[ ext{for} space n ge 3:\ f(n) = egin{cases} 1 & f(n - 1) = 0 space ext{or} space f(n - 2) = 0\ 0 & ext{otherwise} end{cases} ]

递推(mathcal{O}(n)),然后发现如果(n - 1)(3)的倍数,(f(n) = 0),相当于将(f(n) o !f(3))

原文地址:https://www.cnblogs.com/luyiming123blog/p/14483332.html