2023/4/15に開催された、トヨタ自動車プログラミングコンテスト2023#1(AtCoder Beginner Contest 298)に参加しました。
レート推移の方は緑の中盤での停滞がつづいており、正直マンネリ化しているところが否めない状況です。しかしながら、日々自分なりに精進は継続しているところなので、早く水色になれるようにということで、今回も水パフォ目標で挑みます。
Rated参加します。
— devgenjin77 (@devgenjin77) 2023年4月15日
今回も水パフォ目標で頑張ります✊✊
トヨタ自動車プログラミングコンテスト2023#1(AtCoder Beginner Contest 298) - AtCoder https://t.co/WKTi1G6MvR
今回の結果
今回は4完という、なんとも中途半端な結果で終了。
で、今回はなんとコンテスト中にDDoSの影響があったということで、Unratedになってしまいました。結局、今回のパフォーマンスは分かりませんでしたが、多分順位から予想すると、そんなにレートは動かなかったんだろうと思います。
4完でした。
— devgenjin77 (@devgenjin77) 2023年4月15日
結局UnRatedになったけど、多分あまり影響はない感じかと。。
devgenjin77さんのトヨタ自動車プログラミングコンテスト2023#1(AtCoder Beginner Contest 298)での成績:1576位#AtCoder #トヨタ自動車プログラミングコンテスト2023#1(ABC298) https://t.co/Eyt4OpFIsz
振り返り
E、F問題は、既視感があったのですが、結局解き切ることができませんでした。
A問題
愚直にループで回して、o
があるか、x
がないかを判定すればよい。
1分57秒で1完。
提出コード
https://atcoder.jp/contests/abc298/submissions/40635021
B問題
行列の回転処理というものを事前に準備してなかったので、自力で回転を実装することに。
で、いざ0-indexedで実装してみると、バグらせてしまったので、1-indexedで書き直したり、また判定処理がそもそも誤っていたりで色々実装に手こずってしまいました。
結局、12分38秒で2完。少し時間かかりすぎだなあ。
提出コード
https://atcoder.jp/contests/abc298/submissions/40643273
C問題
なんで、これがCに居るの?という違和感を覚える問題。やたらと実装が面倒だなあという感じです。
とりあえず、グラフの隣接リストを作る要領で、箱の番号と数の対応を管理するリストと、数に対する箱の番号の対応を管理するリストを作成。クエリ1では、両方のリストを更新する要領で実装。
あとは、クエリ2と3がやってきたときに、リストから取り出した値をソートもしくはシングル化して出力という感じで実装しました。
で、提出してみたら、とりあえずACにはなったものの、実行時間は1800msというTLEギリギリのタイム。。
想定解法とは少し違ってたかも知れません。とりあえず念の為という感じで入出力を高速化しておいたのが、結果的に良かったというところでした。
26分44秒で3完。
提出コード
https://atcoder.jp/contests/abc298/submissions/40650343
D問題
以下の要領で実装。
答えの変数および、文字列を、それぞれ1で初期化する。
クエリ1では、の末尾にを追加。は10倍してからを足して、で割った余りを取る。
クエリ2では、の先頭の数字を削除。から、先ほど削除した数の倍した数をで割った余りを引く。
クエリ3では、を出力する。
これで、なんとかACを獲得することができました。42分12秒で4完です。
提出コード
https://atcoder.jp/contests/abc298/submissions/40655335
E問題
多分DPで計算するやつだという感じ。
サイコロを振るのは、最大回になるので、サイコロを1回〜回振った時に先手がに居る確率と後手がに居る確率から勝率を積算して計算するのかなあという感じで実装しましたが、結局サンプルが合わず。。結局解法が見えないまま、時間切れを迎えてしまいました。
解説を見てみると、結局DPで計算するのは間違ってなかったのだが、考え方が全然間違ってた模様。なんか、過去問で似たような問題があったような気がしますが、思い出せません。
F問題
一応、問題はチラ見しました。
多分、の計算は、行の和と列の和を足した後で、指定した行と列のマスにある数字を引く感じになるが、結局これをどうやってまとめ切るかというところが思いつかず。
なんかこれも既視感のある問題でしたが、解き切ることは出来ずでした。
G問題
問題すら見ておりません。
Ex問題
問題すら見ておりません。
これまでの実績
今回、Unratedになったので、レート変化はありませんでした。
総括
今回も水Diff周りの問題が解けずという、いつもの残念な結果となりました。
この辺の問題は、典型として過去に同種の問題も出てたかと思いましたが、ちょっとまとめきれていない感じですね。今後は、過去問の情報整理を進めて、類似問題が出題された時に備えていきたいと思います。
ということで、また次回も頑張ります。