AtCoder Regular Contest 108 参加記

2020/11/21に開催されたAtCoder Regular Contest 108に参加しました。

atcoder.jp

やっとこさ緑になったと思ってたら、前回のABCで久々のレート下げ。早速茶落ちのピンチを迎えました。

今回はなんとか緑パフォを死守すべく、2完は確保しようという気持ちで臨みました。

今回の結果

で、、、、今回の結果は無念の1完終了でした(泣)

ARC108結果

ARC108結果

こらあかんわと思ってましたが、結果を見るとなんと超久々の灰色パフォーマンス。。

レートは暴落し、無念の茶落ちを喫してしまいました(T_T)

振り返り

ARC108提出結果

ARC108提出結果

A問題

A - Sum and Product

多分、まともに全パターンやるとTLEになるやつ。工夫が必要だと思い色々悩んだ結果、二分探索でやればいいんじゃね?という結論にいたりました。

で、ここからが慣れない自力の二分探索を実装。デバッグしながら試行錯誤してたら、サンプルが通ったのが、開始40分経過した頃でした。

 

んで、投げてみたら、P = 1のケースで引っかかりWA。。orz

 

結局、微修正してACできたのが開始48分後でした。

コンテスト終了後に解説を確認すると、結局Nを1から\sqrt{P}まで全探索すりゃいいんだということに気づいて愕然としました。もう少しシンプルに考える必要がありましたねー。

B問題

B - Abbreviate Fox

 まずは単純にJavaのStringBuilderクラスを使って、文字列sから"fox"が見つからなくなるまで検索、削除していくという実装をしました。

で、これで通ればいいんだが、結局投げてみたら案の定のTLE。。

ここから、色々再帰を使うか、スタックをどう使うかとか色々思案しましたが妙案が思いつかず時間だけが過ぎていく。結局、うまい実装ができずにこの問題でタイムアップとなりました。。

コンテスト後に解説とかTLとか見ると、スタックに普通に積んでみたり、別の文字列に値を追加しながら"fox"を削除するなど色々簡単なやり方があったのだということに気づいてこれまた愕然としました。

C問題

C - Keep Graph Connected

Bから少し浮気してみたが、一読ではわからず、とりあえず諦めました。

D問題

D - AB

問題すら見れてません。

E問題

E - Random IS

問題すら見れてません。

F問題

F - Paint Tree

問題すら見れてません。

これまでの実績

ボロボロの内容で文句なしの茶落ちです。ギリギリの惜しいところで落ちるとかではないので、逆にスッキリしたかもしれません。

コンテスト実績

コンテスト実績

総括

今回は、あまり難しく無いはずの問題をこんこんと考え込んでしまい、ドツボにハマってしまいました。最近アルゴリズムの勉強が多くて、実際のコンテストで出される全探索の問題を解いている数が不足しているのが原因なのかもしれません。

緑パフォ以下の問題を解きまくるような練習に取り組もうかと思います。

また、次回も頑張ります。