摘要:
//ZOJ的类似题//State: ZOJ2083 C++ 0 188//题目大意:A和B轮流给n条线染色(A先),每人每次只能染一条// 线的一段(长度为2)。不能染色者为输。#include <iostream>#include <stdio.h>#include <cstring>using namespace std;const int MAX = 55;int sg[MAX];int get_sg(int n){ if(sg[n] != -1) return sg[n]; if(!n || n == 1) r... 阅读全文
摘要:
/**State: ECNU 1328 Yes 236K 0MS C++ 0.96K*题目大意:* 给定red、green、blue三种长度分别为c、z、n的矩形条纹,要求* 用这三种矩形条纹来cover大小为p x 1的game board,第一个不能* 再cover的选手为输。问先手是否能赢。*解题思路:* 好像是变种了的博弈,想想,原来可以用sg来模拟,其实就是先拿掉一些,* 再把一堆变成两堆的那种Nim博弈。*/View Code 1 #include <iostream> 2 using... 阅读全文
摘要:
/**State: 2604 140MS 252K 2286 B C++*题目大意:* 给一个长度为l的串,串中只有m跟f两种字符,可以组成2^l种,求* 不含fmf跟fff的数量。*解题思路:* 这种题目一看就是求递推式的。递推式的求导过程值得体会,想象一下。* f(l)代表长度为l的满足条件的串的个数,如果结尾为m的话,数量为f(l-1),* 如果结尾为f的话,那么前面只能是mf跟mm,mm可以由f(l-3)得来,而考虑* mf要考虑到mf的前面不能是f,否则就造成fmf不满足了。... 阅读全文