はじめに
こんにちは。5月17日のABCで入青しました。昨年の11月22日に入水して、そこから約半年かけてようやく青色になることができました。入水記事(https://qiita.com/tehom_math )に続き、青になるまでに行ったことについて書いていこうと思います。
入青するまでにやったこと
いきなり青になるまでにやったことを書いていきます。(入水するまでについては入水記事の方をご覧ください)
ABCの過去問
正直これがほとんど(7割くらい)で、一番大切だと思っています。
具体的には、EF(一部のG)問題の青~黄diffの問題をひたすら埋めました。
入水時は(記録はないですが)おそらく青diffは10問ちょっと、黄diffは一桁問しか解いていませんでしたが、入青現在、青diffを117問、黄diffを31問解いています。一部ARCの問題なども含まれますが、ほとんどがABCです。
どのように取り組んでいたかというと、まず問題を考える、解法が思いつけば自力で実装を頑張る、しばらく(問題によりますが30分~1時間程度)考えて思いつかないなら解説を見る、それでも理解できなかったら解説放送や赤コーダーの人のYouTubeなどを見るといったことをしていました。特に難しいアルゴリズムやデータ構造を使う問題などは、解説を見ただけでは実装が厳しかったので、記事を読みに行ったり、YouTubeを参考にしたりしていました。橙以上の問題はまだほとんど手を付けていません。
入水時に比べてAcceptedは600くらい増えました。
ARCに参加
水から青に上げたレートの半分以上がARCだったので、レートを上げるという点においてはかなり大きかったです。過去問埋めはあまりやっていません。
codeforcesに参加
最近Expertに到達しました。色は青ですが体感はAtCoderの水色くらいなのでもっと上げていきたいです。それと、ICPCに向けて英語の問題文を読み慣れておきたいです。
TUNA Campに参加
初めてのオンサイトコンテストに参加してきました。めちゃくちゃ楽しかったです。また来年も行きたい。
Online Math Contest 単独writer
初めて単独writerをやらせてもらいました。G,Hは競プロっぽい問題なのでよければ解いてみてください(宣伝)
yukicoder
yukicoder上のコンテストにぼちぼち参加していました。新しい知識を学ぶときは大体yukicoderに類題があるのでそれを解いたりもしていました。
AtCoder Algorithm Lecturesを見る
最近始まった神コンテンツです。おすすめは、
https://info.atcoder.jp/entry/algorithm_lectures/randomtest
https://info.atcoder.jp/entry/algorithm_lectures/wavelet_matrix_basic
https://info.atcoder.jp/entry/algorithm_lectures/cycle_lemma
まだ見ていないものもあるので、これから見ていきたいです。
その他いろいろ
典型90などは少しずつですが進めています。最近だとNDPC(https://atcoder.jp/contests/ndpc )に参加しボコボコにされたので、DPをちゃんと学ぼうということでEDPCをすべて埋めました。NDPCも少しずつ埋めていきたいです。
新しく学んだ知識一覧
水になってから青になるまでに新しく学んだ知識一覧(問題を解いたもの限定)を載せます。もう忘れていたり、そもそも理解が足りていないものもありますが、大体こんな感じです。
まとめ
なんとか一つの目標であった「ICPC国内予選までに青」を達成することができました。しかし、有志コンテストなどの問題数が多く難易度の高いコンテストをやると、上位勢にはこの程度の実力では一切歯が立たないことを思い知らされます。少なくとも黄色くらいの実力がないとICPCで結果を残すのは厳しいと思うので、青色に満足せず、さらに上を目指していきたいです。
そして、ついにratedになったARC++がこれから今月中に2回開催されるのでとても楽しみです。勝つぞー!


