P2327 [SCOI2005] 扫雷 解题笔记

题目链接

感觉不止黄

\(dp[i][j][k]\) 为当前位置为 \(i\),当前位置是不是雷(\(j\)\(0\) 则不是,否则是),以及下一个位置是否需要放雷(用 \(k\) 表示)

  • 则如果 \(a[i] = 0\)

    • \(dp[i][0][0] = dp[i - 1][0][0]\)
  • 如果 \(a[i] = 1\)

    • \(dp[i][0][1] = dp[i - 1][0][0]\)
    • \(dp[i][0][0] = dp[i - 1][1][0]\)
    • \(dp[i][1][0] = dp[i - 1][0][1]\)
  • 如果 \(a[i] = 2\)

    • \(dp[i][0][1] = dp[i - 1][1][0]\)
    • \(dp[i][1][0] = dp[i - 1][1][1]\)
    • \(dp[i][1][1] = dp[i - 1][0][1]\)
  • 如果 \(a[i] = 3\)

    • \(dp[i][1][1] = dp[i - 1][1][1]\)

初始 \(dp[0][0][0] = dp[0][0][1] = 1\)

答案是 \(dp[n][0][0] + dp[n][1][0]\)

posted @ 2026-01-11 21:22  _Flins  阅读(14)  评论(0)    收藏  举报