CF1225E Rock Is Push
Sol
考虑 DP,设 \(f_{i,j,k}\) 表示从 \((1,1)\) 到 \((i,j)\),且最后一步的走法是右(\(k=0\))或者下(\(k=1\))的方案数。
考虑 \(k=0\) 怎么转移,设 \(p_{i,j,0}\) 表示最小的数,满足 \((i,p_{i,j,0})\) 往右推石头可以到达 \((i,j)\)(假定此时保证 \(p_{i,j,0}\) 一定是没有石头的)。那么 \(f_{i,j,0}=\displaystyle\sum_{k=p}^{j-1} f_{i,k,1}\)。
\(k=1\) 同理。
这个式子不难想到前缀和优化,答案即为 \(f_{n,m,0}+f_{n,m,1}\),注意 \(n=m=1\) 的特判。
Code
Link。

浙公网安备 33010602011771号