「rng_58がおすすめする練習の仕方」シリーズでは、AtCoderでadminを務めていたrng_58(りんごさん)のおすすめする様々な練習方法をお伝えします。
このシリーズでおすすめする方法は、すべてのユーザに適用出来るものではない可能性があります。あくまで一例として参考にしてください。
AtCoderを始める前の準備
AtCoderに本格的に挑戦する前に、いくつかの前提知識を身につけておくことをおすすめします。本格的な挑戦とは、競技プログラミングを真剣にやりこみ、世界で戦うレベルまで精進することを指します。勉強や就活の一環として行う場合は、これらをすべて身につけている必要はありません。
初心者の方に向けて、準備しておくポイントをまとめます。
基本的な数学の理解
高校数学の基礎知識と、 中学受験レベルの算数能力はABCの前提知識となるので、身につけておくことをおすすめします。
不安を感じる方は市販の参考書や問題集を使用して復習をするとよいでしょう。
(+α)数学的なバックグラウンド
数学オリンピックの経験や、それ以上の算数/数学能力は、AtCoderで上位(赤色)を目指す上で非常に有利です。
しかし、赤色を目指すだけであれば、上記の基礎知識で十分対応可能です。
プログラミング経験は必須ではありません
AtCoderをはじめる上でプログラミング経験は必須ではありません。初心者の方でも挑戦出来るようになっています。
しかし、手元にコンパイル環境があった方がコンテストで有利なため、セットアップが必要な方は自分で調べるか詳しい方へお願いして環境を整えましょう。
基本的な練習の仕方
問題演習を中心に競技プログラミングで強くなりたいとき、実際に問題に挑戦することがとても大切です。
複雑な理論や原理を最初から学ぶことは非常に難しく、つまらなく感じてしまうこともあるでしょう。
まず実際の例題を前にして、どのように解くのか、どのように解決するのか考えることからはじめるのが効果的です。 とはいえ、初心者の方は例題を見ても解き方にたどり着くのが難しいかもしれません。そんな時は、解説やヒントをためらわずに参照することが大切です。
強くなるために必要なことは、コンテスト内外問わず、ひたすら問題を解いていくことです。
様々な問題に触れることで、自分の知識の引き出しを増やすことが大切です。