AtCoderで水色になりました

f:id:ysystem57:20200518182245j:plain
f:id:ysystem57:20200518201017j:plain
ysystemです。AtCoderでついに水色になりました!!!嬉しいです!!!
色変記事書きます!

精進に関して

緑から水色になるまでの僕の精進の仕方についてです。参考にしていただければ幸いです。

その1 解説を読むようにした

緑になりたての頃までは「解説を読む、見る」ということをほとんどしていませんでした。自力で解けるまで考え、できない場合は放置してまた後でやろうというスタンスでした(当時は解説ACをあまり好ましく思っていませんでした)。しかし、これが良くなかったのです。当時は精進していても高難易度の問題は自力で解けず、なかなかAC数も増えませんでした。さすがにこの状況をどうにかしなければならないと思い、どうしてもわからない問題については解説を読むようにしました。解説を読んで新たな知識・考え方を増やそうということです。この実践はかなり効果的でした。新たな知識・考え方が徐々に増えていき、コンテスト中に緑・水diffの問題が解けるようになったり、水Perfが出せるようになりました。

その2 Codeforces div3バチャについて

緑後半になってからCodeforcesのdiv3バチャを多くやるようにしました。それ以前もdiv3バチャを何回かやったことはありましたが、当時は解ける問題があまり多くなく、積極的にバチャをやることはあまりありませんでした。緑後半になって実力もある程度ついてきただろうと感じたので、取り入れることにしました。目的は主に二つです。

コンテスト本番に近い状況で問題を解く

僕はそれ以前バチャ自体をやることがほとんどなく、時間制限を設けて問題を解くということはあまりしていませんでした(竸プロerにとってバチャは必要なことだと思いますが...)。冷えたときに、時間制約内での練習が足りない、と感じたため、バチャをやるようにしました。

数学的思考力の増強

Codeforcesの問題は数学的思考力を要するものが多いと自分では認識しています。数学問題に強くなりたいという考えがありました。

その3 精進記録等

  • 緑になった時点での総AC数(AtCoder以外も含む)... 288
  • 水色になった時点での総AC数(AtCoder以外も含む)... 804

やはり量をこなすのは重要ですね。僕の場合、緑から水色になるまでの精進量は、緑になるまでの量以上でした。

f:id:ysystem57:20200519142419j:plain
精進グラフ
f:id:ysystem57:20200519142517j:plain
f:id:ysystem57:20200519142538j:plain
f:id:ysystem57:20200519142556j:plain


Codeforcesで青になった

f:id:ysystem57:20200519141717j:plain
コドフォでも色変しました。div3バチャをたくさんやったのが良かったと思います。


その他学習記録

使えるようになったアルゴリズムやデータ構造を紹介します。水色になってから学ぶのでもよさそうなものに関しては*マークをつけておきます。

  • 全探索
  • 二分探索
  • bit全探索
  • 尺取法
  • 半分全列挙*
  • BFS
  • DFS
  • ベルマンフォード法
  • ダイクストラ
  • ワーシャルフロイド法
  • クラスカル
  • 簡単なDP
  • 累積和
  • imos法
  • 素数判定、約数列挙、素因数分解
  • 逆元
  • 繰り返し二乗法
  • Union Find
  • セグメント木*

今後の目標

次はAtCoder青、Codeforces紫を目指して頑張りたいと思います。



最後までお読みいただきありがとうございました!