周の長さがの円周上に人いる。は偶数であり、人の位置は基準点から時計回りに進んだ場所である。 全員がいなくなるまで次の操作を繰り返す。
ほかの人の位置は変わらない。間の距離はである。移動距離の合計の最小値と、それを達成する操作順を出力せよ。
入力は次の形式で与えられる。
最初の行に移動距離の合計の最小値を出力せよ。続く行に、各操作で選んだ元の番号を実行順に出力せよ。番号は以上以下である。各操作で人はともに残っており、はその時点でに最も近い別の人でなければならない。答えが複数ある場合、どれを出力してもよい。