CF1051D
设 \(f_{i,j,c,d}\) 表示到第 \(i\) 列有 \(j\) 个联通块,且这一列上面颜色为 \(c\),下面颜色为 \(d\) 的方案数 \((c,d\in\{0,1\},j\le i\times 2)\)。
然后考虑这个状态可以从什么转移而来。
显然有:
\[f_{i,j,1,1}=f_{i-1,j,1,0}+f_{i-1,j,0,1}+f_{i-1,j,1,1}+f_{i-1,j-1,0,0}
\]
\[f_{i,j,0,0}=f_{i-1,j,0,1}+f_{i-1,j,1,0}+f_{i-1,j,0,0}+f_{i-1,j-1,1,1}
\]
\[f_{i,j,1,0}=f_{i-1,j,1,0}+f_{i-1,j-1,1,1}+f_{i-1,j-1,0,0}+f_{i-1,j-2,0,1}
\]
\[f_{i,j,0,1}=f_{i-1,j,0,1}+f_{i-1,j-1,0,0}+f_{i-1,j-1,1,1}+f_{i-1,j-2,1,0}
\]
这些转移状态。
处理出 \(f_{1,1,0,0}=f_{1,1,1,1}=f_{1,2,0,1}=f_{1,2,1,0}=1\) 然后转移即可。
转移时注意边界。