A Chess Game poj-2425
题目大意:
注释:略。
想法:这个题就是为什么必须要用记忆化搜索。因为压根就不知道后继是谁。
我们通过SG定理可知:当前游戏的SG值等于所有子游戏的SG的异或和。
我们就可以dp了。
最后,附上丑陋的代码... ...
#include#include #include #include #define N 1010 int sg[N],n,x,ans,m;int SS[N];int tot,to[N*N<<1],head[N],nxt[N*N<<1],cnt[N],num;inline void add(int x,int y) {to[++tot]=y; nxt[tot]=head[x]; head[x]=tot;}int dfs(int pos){ if(sg[pos]!=-1) return sg[pos]; bool vis[N]; for(int i=0;i
小结:血泪教训:dfs那个vis必须开局部!!不然搜的时候memset全炸了... ...