AtCoderを始めたばかりの方で、「どのように勉強していけばよいかわからない」や「Ratingがなかなか上がらない」という悩みをお持ちではないでしょうか?
本記事では、AtCoder初心者向けに勉強方法をまとめました。
「まだ登録していないけどAtCoderに興味がある!」という方はAtCoderを始め方についてまとめた記事がありますので、参考にしてみてください。
C++入門 AtCoder Programming Guide for beginners
プログラミングそのものが初めてという方はC++入門 AtCoder Programming Guide for beginners(APG4b)でプログラミングの基礎を学びましょう。
APG4bは中学生から社会人までのプログラミング初心者を対象としており、丁寧に解説されています。
言語はC++しかありませんが、「プログラミングの基礎」を体系的に学ぶことができるので、後々ほかの言語を学びたくなった場合にも参考になります。
APG4bで学習を進めるときのポイントは2つあります。
- 2章まで取組む
- わからないところは飛ばす
2章まで取組む
まずは、2章まで取組みましょう。2章までの内容を学ぶことで基本的な文法を学ぶことができ、コンテストの簡単な問題は解けるようになります。
2章まで学んだら実際にコンテストの問題を解いてみましょう。まずはAtCoder Beginners Selectionの問題を解くことをおすすめします。
3章以降は競技プログラミング向けの説明が多くなることやC++特有の記法があり、難易度が上がります。そのため、3章以降は初心者の方にとっては勉強のハードルが高く挫折する恐れがあるためおすすめしません。
もちろんやる気のある方は3章以降も取り組んでいただくのは問題ありません。
わからないところは飛ばす
時間をかけても理解できない内容がある場合は、一旦次の項目に進んでしまいましょう。そして、しばらくしてから再度理解できなかった内容を見てみると理解できることがあります。これはプログラミング学習あるあるです。
どうしても理解できない場合は、飛ばしてしまいましょう。コンテストの問題を解いているときに急に腑に落ちるなどで、いつか理解できる時がくるはずです。
AtCoder Beginners Selection
APG4bの1~2章レベルの内容を理解できている方は、AtCoder Beginners Selectionを解いてみましょう。
AtCoder Beginners Selectionはdr.kenさんが厳選した過去問で、Qiita記事に解説がまとめられています。記事の5章から問題とその解説になりますので、挑戦してみてください。
過去問を解く
過去問を解くときは「AtCoder Problems」を利用すると便利です。
AtCoder Problemsは過去問の一覧が見れるサイトです。左上にあるフォームにAtCoderのUser IDを入力すると、提出したことのある問題のうち正解した問題は緑色、誤答した問題は黄色で表示されます。
難易度も文字色で表現されており一目でわかるので、自分の実力に合った問題に挑戦してみましょう。
![](https://sabeblog.com/wp-content/uploads/2023/03/AtCoder_Problems_.png)
解けない問題がある場合は公式の解説を見てみましょう。公式の解説は2つの方法で展開されています。
- コンテストページ「解説」タブから解説を読む
- AtCoder Live
初心者の方には「AtCoder Live」をおすすめします。「AtCoder Live」はAtCoderが運営しているYoutubeチャンネルでコンテスト終了後に解説放送をしています。過去の放送もアーカイブされているので、いつでも解説を確認することができます。
ホワイトボードを使いながら非常に丁寧に解説してくれますので、私も解けなかった問題があるときはよく参考にしています。
参加したコンテストの復習
コンテストに参加した後は復習することで、実力が身に付きやすいです。
解けなかった問題だけではなく、正解した問題も先に述べたAtCoder Live等の解説を見ると自分とは別の解き方をしていることがあり勉強になります。
まとめ
本記事では、初心者向けにAtCoderの勉強方法を解説しました。勉強方法に悩んでいる方は参考にしてみてください。
コメント