2023/2/4に開催された、Toyota Programming Contest 2023 Spring Qual A(AtCoder Beginner Contest 288)に参加しました。
告知情報によると、今回のABCはD以降の難易度が高めということみたいですが、あまり細かいことには拘らず、今回も5完以上を目標として挑むこととします。
Rated参加します。今回はいつものABCと毛色が違うみたいですが、いつもどおり5完以上目標で頑張ります。
— devgenjin77 (@devgenjin77) 2023年2月4日
Toyota Programming Contest 2023 Spring Qual A(AtCoder Beginner Contest 288) - AtCoder https://t.co/ef4hGa3yDE
今回の結果
結局3完で終了。やはり、D問題以降は激ムズでした。。
しかしながら、なんとか水パフォまで出てくれたようで、一応今回はレートを上げることには成功。こういう時は、早解きが大事。
結局、3完でした😅
— devgenjin77 (@devgenjin77) 2023年2月4日
devgenjin77さんのToyota Programming Contest 2023 Spring Qual A(AtCoder Beginner Contest 288)での成績:1546位
パフォーマンス:1279相当
レーティング:1084→1105 (+21) :)#AtCoder #ToyotaProgrammingContest2023SpringQualA(ABC288) https://t.co/JQIOYz2HCP
振り返り
C問題までは順調。D以降は歯が立たずでした。
A問題
複数ののペアが渡されるので、それぞれについて、を出力せよという問題。
とくに捻りはなさそう。やるだけの実装でOKというところ。一応、intの範囲内でオーバーフローも気にしなくて良さげだろうし。。
ということで、提出一発で問題無くACが取れましたとさ。
1分31秒で1完。
提出コード
https://atcoder.jp/contests/abc288/submissions/38597759
B問題
先頭人分の名前を配列に入れてから、ソートして出力すればOK。
提出一発で問題無くACが取れましたとさ。
5分1秒で2完。
提出コード
https://atcoder.jp/contests/abc288/submissions/38603892
C問題
最近、こういうUnion-Find使う系の問題がCかDに多く出てきている印象。
解法としては、グラフから辺を削除するのでは無く、辺ゼロの状態から、Union-Findを使って閉路検出を行いつつ辺を追加していくやり方になる。
閉路が検出されたら辺を追加しないという処理を繰り返し。追加しなかった辺の本数が答え。
ということで、これも提出一発で問題無くACが取れました。
8分20秒で3完。3完で10分切りは個人的には大分早い方です。
提出コード
https://atcoder.jp/contests/abc288/submissions/38607126
D問題
順位表をみると、D問題で難易度が爆上がりしている状況が伺える。。
とりあえず問題を読んでみるが、問題の題意を掴むのに10分程度要してしまい、解法は全く思いつかずという状態に。。
とりあえず、Excelなどを使って、サンプル2の配列を元に差分の配列を計算してみるが、これといった決め手となる特性は掴めず。。
いもす法の累積和の逆をやるイメージかと思ったが、クエリごとに逆算して確認するようでは計算量的に絶望的な状況。。
結局、まったく糸口が掴めないままに時間だけが過ぎて行き、結局ACを取る事はできませんでした。
今回のE問題は青Diffぐらいの問題だったようですが、時間が結構ある中でまったく見通しが立たなかったのは残念です。
E問題
問題をチラ見することもできておりません。
F問題
問題すら見れておりません。
G問題
問題すら見れておりません。
Ex問題
Ex - A Nameless Counting Problem
問題すら見れておりません。
これまでの実績
一応、レート1100台には回復しました。
総括
まだまだ自分の実力が不足している事を思い知らされる結果となりました。
今週は、結構AHCに時間をつかっていたので、精進量が不足していた部分もありますが、来週以降また改めて今回の復習に取り組みたいと思います。
ということで、また次回も頑張ります。