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

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

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

ペペロの箱詰め

問題に戻る

解説

先頭 iii 本の最適状態を Fi=(Bi,Ui)F_i=(B_i,U_i)Fi​=(Bi​,Ui​) とする。箱数 BiB_iBi​ を最大化し、同数なら使用本数 UiU_iUi​ を最小化する。iii 本目を使わない候補は Fi−1F_{i-1}Fi−1​。最後の箱が k+1,…,ik+1,\ldots,ik+1,…,i なら、累積和で Qi−Qk≥XQ_i-Q_k\geq XQi​−Qk​≥X を満たし、候補は (Bk+1,Uk+i−k)(B_k+1,U_k+i-k)(Bk​+1,Uk​+i−k) となる。最後の箱を固定したとき、それ以前の接頭辞も最適でよいので、すべての解を考慮している。サブタスク 111 は各 kkk を調べる O(N2)O(N^2)O(N2) の DP で解ける。全体では重さが正なので累積和は増加する。Qk≤Qi−XQ_k\leq Q_i-XQk​≤Qi​−X となる添字をポインタで順に一度ずつ追加し、BkB_kBk​ が最大、同じなら Uk−kU_k-kUk​−k が最小の状態を保持する。その候補と Fi−1F_{i-1}Fi−1​ を比較する。時間は O(N)O(N)O(N)、領域は O(N)O(N)O(N)。

Solution written by GPT6.1