这道题确实没有一个很好的解决办法 唯一的正解可能就是打表找规律 或者 直接猜结论了吧. 尽管如此 在此也给最终结论一个完整的证明. 对于70分 容易发现状态数量不大 可以进行暴力dp求SG函数. 原本打算打表 实测状态数量只有1e5左右. const int maxn=800; int T,ans; int vis[100010]; int f[141][58][30][15];//表示当前状态为这个东西时的SG函数. int main() { freopen("a.in","…
题面 一根长为 n 的无色纸条,每个位置依次编号为 1,2,3,-,n ,m 次操作,第 i 次操作把纸条的一段区间 [l,r] (l <= r , l,r ∈ {1,2,3,-,n})涂成颜色 i ,最后一定要把纸条涂满颜色,问最终的纸条有多少种可能的模样. 输入为两个数 n,m ,输出为你的答案 m <= n <= 1e6 题解 不考虑先前染的颜色被覆盖这件事情.如果某种颜色在最终的序列中出现了 x 次,那么我们就直接认为在染这种颜色的时候,我们只染了 x 个格子. 但这样一来每次染…