ユニークビジョンプログラミングコンテスト2022 冬(AtCoder Beginner Contest 283)参加記

2022/12/24に開催された、ユニークビジョンプログラミングコンテスト2022 冬(AtCoder Beginner Contest 283)に参加しました。

atcoder.jp

先週と先々週のABCは所用により参加できずで、3週間ぶりのABC参加となります。

多少のブランクがあることで、すこし心配もありますが、今回はなんとかレートが上げられるぐらいの結果が出ればいいかという感じで参加することにしました。

今回の結果

なんとか4完を確保することができましたとさ。

ABC283結果
ABC283結果

しかし、パフォーマンス的には後一歩及ばずという感じで、残念ながらレートは下げ。今年のABC最終参加は、微妙に残念な結果となりましたとさ。

振り返り

Dまでは順調でしたが、E問題以降は全く歯が立たずでした。

ABC283提出結果
ABC283提出結果

A問題

A - Power

A^{B}を出力するだけの問題。とりあえずオーバーフローには配慮して、出力をlongにする実装で提出。一発でACが取れましたとさ。

1分48秒で1完。

提出コード

https://atcoder.jp/contests/abc283/submissions/37483326

B問題

B - First Query Problem

クエリ形式の問題をシンプルにしたような問題。

ここは、もうやるだけの実装で提出。問題なくACが取れました。

5分36秒で2完。

提出コード

https://atcoder.jp/contests/abc283/submissions/37489623

C問題

C - Cash Register

00を打つタイミングだけ気をつけないといけないという感じの問題。

文字列Sを前から順に見ていって、0以外の場合は、答えをインクリメントする。

0の場合は、一個前が0だったかどうかのフラグをみて、falseだったら答えをインクリメントし、フラグをtrueにする。trueの場合、答えをインクリメントせず、フラグをfalseにする。

多少ややこしくした感じがありますが、上記の実装でなんとかACがとれました。

11分45秒で3完。

ここまで順調にACをとったつもりでしたが、結局順位は2000を大きく超えるぐらい。。最近のABCは、3完まで早解き勝負になってるなあ。

提出コード

https://atcoder.jp/contests/abc283/submissions/37495411

D問題

D - Scope

再帰処理を使うべきかどうか迷ったが、ケースにより、相当深い探索になるとスタックオーバーフローも出かねないと思ったので、再帰を使わない方針で解いてみることに。

予め、 \lceil \frac{|S|}{2} \rceil \times 26分の2次元配列を準備。探索する深さ分と、そこに存在しているアルファベットの個数分を管理する。

文字列を前から順に見ていき、(の場合は、現在の深さにプラス1する。)の場合は、全体のアルファベットの個数から、現在の深さにあるアルファベットの個数を引いて、深さをマイナス1する。

英小文字の場合、全体のアルファベットの個数を見て、すでに存在する場合は気を失うとする。それ以外は、全体のアルファベット個数、現在の深さにアルファベット個数にそれぞれプラス1する。

こんな感じの実装で、なんとか一度の提出でACを取り切ることができましたとさ。

29分52秒で4完。最近、D問題が鬼門だったので、なんとか解くことができてホッとしました。

提出コード

https://atcoder.jp/contests/abc283/submissions/37503925

E問題

E - Don't Isolate Elements

問題を見ても全然解法が思いつかん。。また、順位表を見ても、40分過ぎぐらいでACが200前後というぐらいだったので、青Diff程度の難易度があるような予感がする。。

結局、時間いっぱいかけてもよくわからん感じだったので、上から愚直に見ていって、孤立点があったらそれをFlipしていき、最終的に孤立点がないかをみるという単純な解法でワンチャンあるかと提出したが、あえなくWAという結果。。

結局ここで時間切れになりましたとさ。

F問題

F - Permutation Distance

とりあえず、問題に目を通しましたが、何もわからず。

G問題

G - Partial Xor Enumeration

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

Ex問題

Ex - Popcount Sum

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

これまでの実績

結局、今年は緑レートの上っ側で停滞する状態をずっと続けるだけでした。

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

総括

今年のRatedコンテストはこれでおしまいというところで、結局年内に入水することは叶わずでした。

今年1年の推移を振り返ると、後半にかけて少し上昇しかけたところもありましたが、さらに1段上へ登るのことはできずという感じですね。

さらに、最近は周りの参加者のレベルもだいぶ上がっているように見受けられ、このままでは緑パフォを維持するのもやっとという感じになるかと思います。

来年こそ、入水、さらにその上を目指していこうという気持ちはありますので、年末年始はさらに精進を続けていきます。

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