Atcoderで橙コーダになる方法(の一例)
作成日:2017.12.14
カテゴリー:競プロに関するあれこれ
はじめに
これはCompetitive Programming Advent Calendar 2017の14日目の記事である。
私は11月にAtCoderで橙コーダーになることができた。
そこで本記事では、自身の競プロに対する取り組みを挙げることで橙コーダーになるための方法の一つを提示する。
本題
必要な知識
マンハッタン距離が出てきたら45度回転する、というような頻出テクは押さえておきたい。
また、データ構造やアルゴリズムで最低限知っているべきものはSegment Treeや全方位木DPのレベルであろうか。
私はフローとか高速フーリエ変換とかは知っているが、コンテスト中に使って解けた記憶はない。
だから、これらを知らなくても橙にはなれそうである。
コンテスト後の復習
解けなかった問題は公式の解説等を見て解法を理解した後、どのように考えれば自分で思いつけるかを考えるようにしている。
これは解ける問題を増やすために一番重要であると思っている。
また解けた問題も復習している。
これは無駄な思考をしていなかったか、実は嘘解法ではなかったかを確認するためである。
前者の場合はなぜ不要な遠回りをしてしまったのかを考えることで早解き力の向上につながる。
解説を書く
復習を終えた後には解説を書いてこのサイトにあげることに決めている。
これは復習したつもりになってしまうのを防ぐとともに、問題を解く時の思考の流れを改めて確認する意味をもっている。
そのため、解説はできるだけ行間を埋めて書くように気を付けている。
行間を埋められないということは、その部分が理解できていない可能性があるということである(とは言っても面倒になってサボることはあるのだが)。
まとめ
当たり前のことだが、復習を徹底して行うのが大事である。