2020/11/21に開催されたAtCoder Regular Contest 108に参加しました。
やっとこさ緑になったと思ってたら、前回のABCで久々のレート下げ。早速茶落ちのピンチを迎えました。
今回はなんとか緑パフォを死守すべく、2完は確保しようという気持ちで臨みました。
AtCoder Regular Contest 108 - AtCoder https://t.co/oTOO8MMpTP
— devgenjin77 (@devgenjin77) 2020年11月21日
参加します。前回のABCでは茶パフォを喰らったので、今回は少なくとも緑パフォ以上。2完を早めに達成するのを目標にします。
今回の結果
で、、、、今回の結果は無念の1完終了でした(泣)
こらあかんわと思ってましたが、結果を見るとなんと超久々の灰色パフォーマンス。。
レートは暴落し、無念の茶落ちを喫してしまいました(T_T)
devgenjin77さんのAtCoder Regular Contest 108での成績:3448位
— devgenjin77 (@devgenjin77) 2020年11月21日
パフォーマンス:253相当
レーティング:811→761 (-50) :(#AtCoder #ARC108 https://t.co/OCJ84JNrVf
1完終了、久々の灰パフォでレート暴落。茶落ちしてしまいました😭😭😭
また、緑に復活できるよう頑張ります。
振り返り
A問題
多分、まともに全パターンやるとTLEになるやつ。工夫が必要だと思い色々悩んだ結果、二分探索でやればいいんじゃね?という結論にいたりました。
で、ここからが慣れない自力の二分探索を実装。デバッグしながら試行錯誤してたら、サンプルが通ったのが、開始40分経過した頃でした。
んで、投げてみたら、のケースで引っかかりWA。。orz
結局、微修正してACできたのが開始48分後でした。
コンテスト終了後に解説を確認すると、結局を1からまで全探索すりゃいいんだということに気づいて愕然としました。もう少しシンプルに考える必要がありましたねー。
B問題
まずは単純にJavaのStringBuilderクラスを使って、文字列から"fox"が見つからなくなるまで検索、削除していくという実装をしました。
で、これで通ればいいんだが、結局投げてみたら案の定のTLE。。
ここから、色々再帰を使うか、スタックをどう使うかとか色々思案しましたが妙案が思いつかず時間だけが過ぎていく。結局、うまい実装ができずにこの問題でタイムアップとなりました。。
コンテスト後に解説とかTLとか見ると、スタックに普通に積んでみたり、別の文字列に値を追加しながら"fox"を削除するなど色々簡単なやり方があったのだということに気づいてこれまた愕然としました。
C問題
Bから少し浮気してみたが、一読ではわからず、とりあえず諦めました。
D問題
問題すら見れてません。
E問題
問題すら見れてません。
F問題
問題すら見れてません。
これまでの実績
ボロボロの内容で文句なしの茶落ちです。ギリギリの惜しいところで落ちるとかではないので、逆にスッキリしたかもしれません。
総括
今回は、あまり難しく無いはずの問題をこんこんと考え込んでしまい、ドツボにハマってしまいました。最近アルゴリズムの勉強が多くて、実際のコンテストで出される全探索の問題を解いている数が不足しているのが原因なのかもしれません。
緑パフォ以下の問題を解きまくるような練習に取り組もうかと思います。
また、次回も頑張ります。