AtCoder Regular Contest 134 参加記

2022/1/29に開催されたAtCoder Regular Contest 134に参加しました。

atcoder.jp

前回のARC133は、1完で下げという残念な結果だったので、今回はせめて2完を取るぞという目標をもって参加することにしました。

今回の結果

結果は、予告通りの2完達成。これが今の全力です。。

ARC134結果
ARC134結果

肝心のパフォーマンスは今のレートと同じぐらいで、今回は現状維持という結果となりましたとさ。

振り返り

Bでかなり悪戦苦闘しましたが、なんとか解き切ることができました。

ARC134提出結果
ARC134提出結果

A問題

A - Bridge and Sheets

位置0からシートで覆われている位置を変数で管理する。左端の区間から参照して覆われていない区間があった場合、その長さをlとすると、\lceil\frac{l}{W}\rceil枚のシートが必要となる。

この計算を右端のLの位置まで計算すればOK。

問題なくACをとることができました。

提出コード

https://atcoder.jp/contests/arc134/submissions/28862848

B問題

B - Reserve or Reverse

とりあえず、s_{x1}に対するs_{x2k}を選ぶときに、s_{x2k} s_{x1} より右に位置し、かつ辞書順最小のものを貪欲に選んでいけば良さそう。

ということで、まず文字列より、文字の辞書順の昇順且つ文字の位置の降順でソートしたリストを用意し、このリストの先頭をs_{x2k}の候補として選択。

あとは、s_{x1}s_{x2k}より辞書順で大きい場合かつ、文字の位置が右となる場合に入れ替えを行うという手法でやってみることに。

で、この方法で大体合っていたようであるが、いざ提出してみると大量のWAに苦しめられることに。。

s_{x1}s_{x2k}が辞書順で同じだった場合の考慮が抜けていたのを直したりなど、なんやかんややっているうちに5回ペナルティを食らってしまうことになりましたが、なんとかごにょごにょ直しているうちにACを取り切ることができました。

提出コード

https://atcoder.jp/contests/arc134/submissions/28873889

C問題

C - The Majority

残り時間があと20分少々あったので、問題に目を通してみましたが何もわからず。

あっけなく時間切れとなりましたとさ。

D問題

D - Concatenate Subsequences

チラ見するものの何もわかりませんでした。

E問題

E - Modulo Nim

問題すら見ておりません。

F問題

F - Flipping Coins

問題すら見ておりません。

これまでの実績

今回は現状維持というなんとも微妙な結果となりましたとさ。

コンテスト実績
コンテスト実績

総括

今回のARCはなんとか2完達成まではできたものの実装ミスが多く、B問題でペナルティを喰らいまり、1時間以上かけてしまったのは反省材料です。

高難易度の問題の精進も必要かというところですが、実装力を高めるために緑Diff程度の問題を数多く解いていくことにも注力していこうと思います。

ということで、また次回も頑張ります。