初期方向が右なら、それ以外ならとする。最終方向の指標も同様に定め、左と右に渡した回数をとする。方向が交互に変わるのでである。
とし、左のごみ箱に入った本数をとする。各境界での保存則からとなる。境界条件はである。したがって
よりであり、最終的に右を向く人数はと決まる。
左から順にと、まだ決めていない最終右向きの人数を管理する。ならとしてを1減らし、そうでなければとする。その後と更新する。答えはである。
貪欲法の正当性を示す。とすると、非負条件は
となる。は単調増加するため、は最初に単調増加し、その後単調減少して、最後に必要な最終右向きの人数となる。したがって、その人数を超えずに置ける1を早く置いても、後の上限を破らない。実現可能な最終状態と接頭辞ごとに比較すると、貪欲法が1を置く時点は遅くならず、必要な個数を必ず置ける。すべての出発回数は非負となり、境界条件も満たす。
求めた回数が実行可能であることも示す。操作した人の最後の出発方向は最終方向の逆である。道グラフで最後の出発方向が閉路を作るのは、隣り合う人の最終方向が左、右となる場合だけである。この変化を貪欲法が作る場合、またはとなり、少なくとも一方は一度も操作していない。よって操作した人たちの最後の出発方向には閉路がない。
任意の合法な実行は計算した回数を超えない。初めて上限を超えようとする人は、隣から受け取った数が予定以下なので、保存則によりペペロを持っていない。逆に終了時に予定された出発が残れば、残りの出発は各頂点で流入と流出が等しく、ごみ箱へは向かわない。残りの最後の出発をたどると閉路ができ、矛盾する。したがってすべての合法な実行の操作回数が等しく、求めた和が最小値である。
時間・空間計算量はである。64ビット符号付き整数を使う。とするとなので、答えは以下である。
Solution written by GPT6.1