ABC334C - Socks 2

なくしていない靴下を色の昇順に$${B=(B_1, \cdots, B_M)}$$とします。特に、$${M=2N-K}$$です。

DP をします。$${dp[i][j]:=}$$「$${(B_1, \cdots, B_{i-1})}$$からちょうど$${j}$$個を削除したときの、奇妙さの最小値」とします。求めるべき値は、$${M}$$が偶数のとき$${dp[M][0]}$$、$${M}$$が奇数のときは$${\min(dp[M-1][0], dp[M][1])}$$です。

遷移を考えます。考えるべきは次の 3 パターンです。

  • $${B_i, B_{i+1}}$$をペアにする。$${B_{i+2}}$$をペアに含むことを確定させる。$${j}$$は変化しない。

  • $${B_i, B_{i+1}}$$をペアにする。$${B_{i+2}}$$をペアに含まないことを確定させ、$${B_{i+3}}$$をペアに含むことを確定させる。$${j}$$は 1 増える。

  • $${B_i, B_{i+2}}$$をペアにする。$${B_{i+1}}$$をペアに含まないことを確定させ、$${B_{i+3}}$$をペアに含むことを確定させる。$${j}$$は 1 増える。

これを漸化式に落とし込めば良いです。$${O(N)}$$時間で解けることが確認できます。


この記事が気に入ったらサポートをしてみませんか?