1.はじめに
こんにちは。現在スタートアップでFlutterエンジニアをしているAosanoriと申します。最近就活のコーディングテスト対策としてAtCoderをやっていこうと思いました。先日のABC230で入茶してここまでを振り返りたいと思ったのでこの記事を書くことにしました。プログラミング経験者でAtCoderを始めてとりあえず茶色に到達したいなと思っている方にとって参考になれば幸いです。
2.茶色になるまでにやったこと
毎週ABCに参加する
コンテストに参加しなければレートは上がらないのでできるだけ毎週参加することが茶コーダーになる一番の近道だと思います。コンテスト中に解けなかった問題を復習することも大事です。何回か出ていれば失敗することもありますが、気にせずに出続けましょう。
AtCoderProblemsのMediumを埋める
自分は教科書を読んで理解するタイプではなく問題を解いて体で覚えるタイプなので、ひとまず自分のレベルに合った問題を解くことが先決と考えました。そこでAtCoder Problemsのヘッダーの右上にちょこんと佇んでいるBoot camp for BeginnersからMedium 100をできるだけ埋めようと頑張りました。自力で解けなかった問題は解説を読んで自力でACできるまで頑張りました。また自分は頭の回転が遅く、早解きは苦手なので爆発力を高めるために早いうちからアルゴリズムを知ってないと出来ないような問題にも手をつけていました。
けんちょん本を読む
この本はこれからAtCoderを本気で始めようとしている方にはお勧めです。基本的なアルゴリズムが初心者でも理解できるように解説されているので勉強が捗ると思います。ですが茶diffではアルゴリズムを知っていないとできないような問題は少ないなと感じたのでAtCoderProblemsのMediumを埋める方が優先順位は高いなと思いました。
3.茶色になった時点の記録
自分は1日1ACを守っていたのでLongest Streakが長くなっていますが茶色になる上でそれはあまり重要ではないのかなと思いました。ですが少しでもいいから無理しない範囲で継続することが茶コーダーになる一番の近道だと思います。
元々自分でアプリを作ったことがあり基本的なプログラミングの文法は知っていたので、あまり灰diffは解かず茶diffを中心に演習を行なっていました。茶色になるためにはABCのC問題まで解ければいいので、ある程度プログラミングの文法が慣れている方は早めにCの難易度帯である茶diffを解くことがいいのかなと思いました。
4.ここまでを振り返って
茶色になるまでの約90日は色々な記事やサイトを参考にしながら毎日勉強してきたのであっという間に過ぎてしまいました。勉強していく中で今まで解けなかった問題が時間を置いた後に再チャレンジをしたら解けたり、今回のABCがそうなんですが初めて4完できたりした時の達成感は凄まじいものです。自分が成長しているのがはっきり分かるこの感覚がAtCoderにハマる要因の一つかなと思いました。またアルゴリズムや数学的発想を用いた問題を解くことは自分の中では楽しいのでこのまま楽しく続けられたらなと思いました。
5.最後に
このままの調子で緑コーダー、最終的には水色コーダーを目指して精進していきたいと思います。
あとTwitterもやってるのでフォローお願いします!
質問やアドバイス等ありましたらコメントしていただけると幸いです。
駄文ですがここまで読んでいただきありがとうございました。