博弈
THE___BEST
这个作者很懒,什么都没留下…
展开
-
sg函数模板
///f[]:可以取走的石子个数 ///sg[]:0~n的SG函数值 ///hash[]:mex{} int f[K],sg[N],hash[N]; void getSG(int n) { memset(sg,0,sizeof(sg)); for(int i = 1; i <= n; ++i) { memset(hash,0,sizeof(hash));原创 2015-10-16 22:33:45 · 340 阅读 · 0 评论 -
HDU 5754 博弈(威佐夫博弈)
这个题除了皇后的可以套用一下威佐夫博弈以外其他的都可以找规律找出来,主要为了学习一下威佐夫博弈, 威佐夫博弈:给两堆石子,每次都可以从其中一堆石子中取n个石子或者从两堆石子中都取n个石子,最后将石子取完的获胜。 解是根据: int k = abs(n - m); n = (int)((double)k * (1.0 + sqrt(5.0)) / 2.0原创 2016-07-26 20:22:05 · 530 阅读 · 0 评论