观察到m 比较小,考虑状压m
对于当前状态s
当s‘ 去掉末尾位和s 去掉开头位相等,且s‘ 中个数<=k
然而问题没有这么简单,花园是个环
设开头m 个状态为s ,则 为以s 开头的答案
因此枚举开头所有状态即可,这样就有80分了
对于最后20分
首先观察转移
设当s 可以转移到s’ 时,
与矩阵乘法一致
因此
1 |
|
观察到m 比较小,考虑状压m
对于当前状态s
当s‘ 去掉末尾位和s 去掉开头位相等,且s‘ 中个数<=k
然而问题没有这么简单,花园是个环
设开头m 个状态为s ,则 为以s 开头的答案
因此枚举开头所有状态即可,这样就有80分了
对于最后20分
首先观察转移
设当s 可以转移到s’ 时,
与矩阵乘法一致
因此
1 | #include<cstdio> |