摘要: 定义P-position和N-position,其中P代表Previous,N代表Next。直观的说,上一次move的人有必胜策略的局面是P- position,也就是“后手可保证必胜”或者“先手必败”,现在轮到move的人有必胜策略的局面是N-position,也就是“先手可保证必胜”。更严谨的定义是:1.无法进行任何移动的局面(也就是terminal position)是P-position;2.可以移动到P-position的局面是N-position;3.所有移动都导致N-position 的局面是P-position。 阅读全文
posted @ 2014-02-23 21:32 ACalvin 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 今天碰到一道题,HDOJ 1059,因此便去学习了一下二进制的优化。为什么是二进制优化而不是三进制四进制优化呢?因为二进制中只包含0 1两个数,恰好可以代替背包状态中的放与不放。换句话说,是当该类物体被拆分了之后,可以表示可表示的所有的数,具体证明便不提了。对于多重背包,自然没什么好说的,是二进制优化的基础。而对于完全背包(即物品的个数有无限个),我们不妨将其看做v/c[i]件的多重背包,因为v/c[i]为其有效件数。下面贴代码:#include#include#includeusing namespace std;const int SIZE=60000;int dp[SIZE+5];int 阅读全文
posted @ 2014-02-23 20:07 ACalvin 阅读(1243) 评论(0) 推荐(0) 编辑