Toy と帽子と ADP BE

主にプログラミングに関わる話をゆるくエモくやっていきます

CodeQUEEN 2023 予選 (AtCoder Beginner Contest 308)

5完4WA1TLE

各問題

A - New Scheme

いわれた通り判定します。

B - Default Price

色と値段をmapで管理すればよいです。mapにない色が来たら P_0 円です。

C - Standings

成功率を vector に入れてソートするだけですが、「成功率が同じ人が複数いる場合、その中では人の番号が小さい順になるように並び替えてください。」という条件があるので、vector に入れるのは成功率と番号の pair にして、うまくソートされるようにします。番号をマイナスにして、降順ソートするのが楽です。

D - Snuke Maze

すぐに解法が思いつけなかったのですが、s のマスに関してのみすでに訪れたかどうかを管理してBFSをすればよいです。同じ s を何度訪れてもそのあとの経路は重複するだけです。

で、s を訪れたかどうかのフラグは作ったのに立てるの忘れてて 1TLE とかね。on_

E - MEX

E を固定して、その前にある M と 後ろにある X の個数をかけたものに MEX をかけていけばよいです。MX はもちろん A_i ごとに分けて数えます。

fenwick_tree とか累積和とか使ってもよいし、先に X の個数を数えておいて前から順に処理して M が来たら加算、X が来たら減算とかしてもよいです。

なんと MEX の判定をしくじって 4WA...。なんで???

F - Vouchers

商品の値段の安いものから貪欲でいいのですが、なぜか高いものからやってしまい、時間切れ。まじでか...。

まとめ

MEX の判定の何がだめだったのかがまだわかっていない...。