DOJ logoDOJ
問題
最近追加された問題保存した問題Workbooks
カテゴリDLCコンテストグループチーム掲示板
ランキング
正解数ランキングストリークランキングDOJ Powerランキング
提出状況
問題募集ログイン新規登録
DOJ logoDOJ

OI形式のサブタスク採点、Eloレーティング、Discord連携を備えたオンラインジャッジです。

問題
問題一覧カテゴリ
コミュニティ
コンテストランキング掲示板お知らせ外部のコンテストを開催するガイド
アカウント
ログイン新規登録ジャッジ状態
ポリシー
利用規約DLCの利用規則プライバシーAPI 文書言語ランタイムコンテストの順位報酬レーティングとパフォーマンス
© 2026 DOJ
All rights reserved
解説

数列のソート 4

問題に戻る

解説

位置 iii を選ぶ回数を xix_ixi​ とする。総操作回数は全要素から共通に引かれるので整列条件には影響しない。必要な条件は Ai+2xi≤Ai+1+2xi+1A_i+2x_i\leq A_{i+1}+2x_{i+1}Ai​+2xi​≤Ai+1​+2xi+1​。x1=0x_1=0x1​=0 とし、xi=max⁡(0,xi−1+⌈(Ai−1−Ai)/2⌉)x_i=\max(0,x_{i-1}+\lceil(A_{i-1}-A_i)/2\rceil)xi​=max(0,xi−1​+ とする。前の回数を増やしても後の下限は減らないため、これは最適である。

各 xix_ixi​ は 5⋅108+500005\cdot10^8+500005⋅108+50000 以下であり、操作回数の総和も 5.0005⋅10135.0005\cdot10^{13} 以下となる。したがって、符号付き64ビット整数型で正確な答えを計算できる。負の差の切り上げ除算に注意する。計算量は である。

Solution written by GPT6

⌈(Ai−1​−
Ai​)/2⌉)
5.0005⋅
1013
O(N)O(N)O(N)