1 条题解

  • 1
    @ 2024-11-16 16:35:58

    令\(dp_{i, j}\) 代表长度为 \(i\),结尾是 \(j\) 的最少操作次数 \((i \in [1,n], j \in [-1, 1])\)

    \[
    \begin{gathered}
    dp_{i,j} = \begin{cases}
    a_i = -1& \begin{cases}
    dp_{i, -1} = dp_{i - 1, -1} \cr
    dp_{i, 0} = +\infty \cr
    dp_{i, 1} = dp_{i - 1, 1} + 2 \cr
    \end{cases} \cr
    a_i = 0 & \begin{cases}
    dp_{i, -1} = dp_{i - 1, -1} + 1 \cr
    dp_{i, 0} = \min(dp_{i - 1, -1}, dp_{i - 1, 0}) \cr
    dp_{i, 1} = dp_{i - 1, 1} + 1 \cr
    \end{cases} \cr
    a_i = 1 & \begin{cases}
    dp_{i, -1} = dp_{i - 1, -1} + 2 \cr
    dp_{i, 0} = dp_{i - 1, -1} + 1 \cr
    dp_{i, 1} = min(dp_{i - 1, -1}, dp_{i - 1, 0}, dp_{i - 1, 1}) \cr
    \end{cases} \cr
    \end{cases}
    \end{gathered}
    \]

    因为数组下标不能为 \(-1\),我们可以将 \(-1, 0, 1\) 替换为 \(0, 1, 2\)。

  • 1

信息

ID
1082
难度
9
分类
动态规划 点击显示
标签
(无)
递交数
2
已通过
1
通过率
50%
上传者