
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
AtCoder Problems Hard No.71~80解説 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
AtCoder Problems Hard No.71~80解説 - Qiita
を最小にする$b$は何か考えます。この$b$は中央値になります。$b$が中央値であれば、$b$を少し移動させ... を最小にする$b$は何か考えます。この$b$は中央値になります。$b$が中央値であれば、$b$を少し移動させたときに、増加する$|A_i'-b_{ \ }|$と減少する$|A_i'-b_{ \ }|$の個数が等しくなります。つまり微分が0になるので、$b$が中央値であることがわかります。 実装 データ数が偶数であるときは中央値はlow, highの2種類出てくるので、そのうち小さいほうを採用します。 import statistics N = int(input()) A = list(map(int, input().split())) Am = [] for i in range(1, N+1): Am.append(A[i-1]-i) Am = sorted(Am) mid_low = statistics.median_low(Am) mid_high = statistics.m