2021/12/3に開催されたAtCoder Beginner Contest 230に参加しました。
前回参加したARC130で、わずかに冷えてしまったので今回は連敗だけは避けようという気持ちで参加することにしました。
Rated参加します。前回のARCでわずかに冷えたので、今回は連敗しないように頑張ります✊
— devgenjin77 (@devgenjin77) 2021年12月3日
AtCoder Beginner Contest 230 - AtCoder https://t.co/PXi31XPY9Y
今回の結果
で、結果ですが、久々の3完という無念な結果となりました。。
こりゃ、だいぶ冷えるかと思ったのですが、なんとか茶色パフォの上の方だったので、なんとか、かすり傷ですんだかというところです。
3完茶パフォで連敗です😭😭
— devgenjin77 (@devgenjin77) 2021年12月3日
また、次、頑張ります
devgenjin77さんのAtCoder Beginner Contest 230での成績:2472位
パフォーマンス:796相当
レーティング:925→913 (-12) :(#AtCoder #ABC230 https://t.co/el5fPgmhGx
振り返り
D、E以降は全く手が出ませんでした。
A問題
やたら前置きが長いA問題だったが、が42を超えた場合、
に1を足して表示してやればOK。
問題なくACを取ることができました。
提出コード
https://atcoder.jp/contests/abc230/submissions/27645480
B問題
当初、oとxの並びであり得ないパターンを検討していく問題かと思ったが、よくよく考えると、が10以下程度ということで、"oxx"をある程度の長さで連結しておいて、
がその連結文字列に含まれるかを考えれば良さそう。
ということで、あとは実装して問題なくACが取れましたとさ。
提出コード
https://atcoder.jp/contests/abc230/submissions/27651003
C問題
問題文を読んだだけでは、問題の意味がさっぱり分からずに時間を溶かしてしまったが、サンプルをみるにマス目を中心としたXの字を書いて、あとは四角形で切り取った部分を表示せよということらしいことがわかった。
の最大値が
ということで、マス目全ての状態を管理するのは不可能ということで、
を左上、
を右下とする四角形で各マス目の状態が判定できれば良さそう。
あとは、判定するマス目に対して、が求めることができる場合、問題文のとおりの条件式に合致するかどうかを判定することでなんとかACが取れました。
提出コード
https://atcoder.jp/contests/abc230/submissions/27662023
D問題
なんか見た目上、区間スケジューリング問題っぽい形をしたこの問題。
サンプルの見た目上、一番の小さい順番でソートし、右端から
列目までにパンチをすることでいけそうな気がするが、証明もおぼつかなかった為実装に手をつけることができず、いろいろ悩んでしまい時間を溶かしているうちに時間切れとなってしまいました。
で、解説をみると結局、区間スケジューリング問題だったようで解法も思いついたものとそう変わらないものだったというオチでした。。
こんなことだったら、とりあえず実装をしてしまえば良かったかなーと思うものの後の祭り。自分の実力不足を認めるしかありません。
E問題
D問題に詰まってしまったため、E問題もチラ見してみましたが、これもよく分からずで早々に諦め。
F問題
問題すらみれておりません。
G問題
問題すらみれておりません。
H問題
問題すらみれておりません。
これまでの実績
ついに、ABC単体で見た時の連勝もストップしてしまいました。
総括
今回のD,E問題は、ある程度典型アルゴリズムに対する理解が無いと対応できない問題。やはりまだまだ典型に対する知識を得るための精進が足りないと感じる次第です。
ここ数ヶ月レート上昇を続けてきましたが、実力の方は早々上がっていないようで、このままでは緑の下位の方で停滞する可能性が高いですね。今回の問題も復習もそうですが、当面は典型アルゴリズムを習得することを目標に精進をしていきたいと思います。
ということで、また次回も頑張ります。