E - Set Meal Editorial
by
miscalculation53
rsk0315 さんの解説 のセグ木パートは std::set 等でもできます。\((b_j, j)\) をすべて入れた set を用意しておき、各主菜 \(i\) に対する計算では
- 合わせられない副菜を set から削除
- set に入っているうち \(b_j\) が最大のものを取得
- 1. で削除した要素を set に入れ直す
を行えばよいです。計算量は同様に \(O((N+L)\log M)\) 時間です。
posted:
last update:
