DP 专项练习

发布时间 2023-11-04 10:47:36作者: 2017BeiJiang

[USACO23OPEN] Pareidolia S

对于这种题,两种思路,一种是直接 \(dp\),一种是考虑每个 bessie 产生的贡献。

显然直接考虑 bessie 产生的贡献难以解决 bbessie 的情况,所以考虑 \(dp\)

\(f_{i}\) 表示以 \(i\) 开头的字符串的总贡献,那么显然有 \(ans=\sum_{i=1}^{len}f_i\),考虑如何转移。

bessie 来划分,对于 \(i\),找到往后 \(e\) 的位置,记作 \(j\),那么这个 bessie 就会在后边产生 \(len-j+1\) 的贡献,同时再加上 \(f_{j+1}\) 即可。即:

\[f_{i}=f_{j+1}+len-j+1 \]

record