初めに
atcoder.jp 解けなかったので
敗因
:= と の集合が等しくなるような最小の
:= と の集合が等しくなるような最大の
みたいなものを考えて, set の比較が O(1) でできると信じていたので裏切られて TLE. (WA はなぜか分からない) atcoder.jp
解法
サイズだけ考える→重複を抜いたもので考える atcoder.jp
終わりに
いろいろな別解があるっぽい(User解説がたくさんあったので)
目を通してみて, お勉強するかも?
atcoder.jp 解けなかったので
:= と の集合が等しくなるような最小の
:= と の集合が等しくなるような最大の
みたいなものを考えて, set の比較が O(1) でできると信じていたので裏切られて TLE. (WA はなぜか分からない) atcoder.jp
サイズだけ考える→重複を抜いたもので考える atcoder.jp
いろいろな別解があるっぽい(User解説がたくさんあったので)
目を通してみて, お勉強するかも?
atcoder.jp 解けなかったので
典型1 最大/最小から K 番目の要素は答えで二分探索する←知ってた
典型2 ふたつの組み合わせの数え上げは, 片方を固定してみる←知ってた
典型3(?) 砂糖/食塩水の問題はある濃度に達するまでの砂糖の量とかをみるといい←知らなかった
「 x % 以上の溶液が K 個以上あるような最大の x を求める」問題に言い換える.
これは「 x % 以上の溶液はいくらあるか?」という問題を用いて二分探索できる.
全ての溶液に対して, 「 x %にするための砂糖の量との差」を求めておいてソートしておくことで, 片方を固定したときに二分探索を用いて, その溶液と混ぜた時に x % 以上になる溶液の個数が分かる.
よって, で答えを求めることができた.(は許容される最大誤差)
くやしい...
atcoder.jp 解けなかったので
実はけっこう前から温めてた問題. 最初は精選100 + 50 問で, RMQ の練習問題としておいてあったのを見て.
普通に考察すると何回魔法を使うかで場合分けして最小値をうまくとるみたいな噓貪欲をはやして 9 WA (In 21 cases)...(ちなみにどういうケースで落ちてるかまだ分かっていません...) atcoder.jp
魔法を使う回数を固定する(とする)と, スライム を捕まえるためには, スライム を捕まえればよい.
(これはスライム 以外のスライムと干渉しない. (Editorial PDF の図みたいに, 魔法を使うところにスライムを捕まえるイベントを適切位置に挿入していくようにすれば構築できるので.))
よって, となるので RMQ を用いると で解けた.
( は累積minみたいな感じで で計算することができるので を落すこともできる(公式 Editorial の解法))
魔法の使う回数固定は合ってただけに悔しい.
(魔法操作に購入操作を挿入するという考え(→各スライムの購入は独立という考え)ができませんでした...)
あと RMQ は想定解じゃないのか... (そもそも静的区間minだから線形RMQすれば か)
atcoder.jp 解けなかったので
昨日解いた AGC020B みたいに, 各山について最小値 / 最大値がひとつ前から線形に求まるか...? みたいなことを考えていました. 実際は決まるのは最大値だけなのでそれは考えなくてもよいです. (よく考えると最大値しか知らないから最小値が出てくるわけがないがないですね...)
条件を整理しましょう. をみると,
が成り立ちます. 同様に についても考えると,
等号の部分はよしなにします. atcoder.jp
うーん, もうすこし詰めたら解けそうだったなあ...
atcoder.jp 解けなかったので
例えば は必ず 2 でないといけなくて, は 2, 3 でないといけなくてみたいなこと( -1 のときはどうなるのかを)を考えていました. ( -1 になるときを中心に考察を進めても難しいので) から線形にできる方法を考えるべきでした.
各ラウンド直後の最小, 最大をもっておけばそのひとつ前が計算できます. です. 具体的には, を i ラウンド後の最小 / 最大値としたときに,
が成り立ちます. atcoder.jp
( がつくけど)二分探索でも通ります. 「広義単調増加関数同士の合成関数もまた広義単調増加関数になる」そうです(知りませんでした, これって自明ですか? よく考える余地があるかも?). そうすると Editorial での が広義単調増加関数になるので二分探索ができます, と. なるほど... 最小最大で分けて二分探索をして逆転してしまえば -1 . 賢いですね. atcoder.jp
よくかんがえれば dp なのか, むずかしい...