本記事ではAtCoderの始め方についてまとめました。以下のような悩みをお持ちの方はAtCoderに挑戦してみてはいかがでしょうか?
- プログラミングの勉強をしてみたいけど何から始めたらよいかわからない。
- プログラミングの知識やコードを書く力を身に着けたい。
以降では、AtCoderの概要と始めるまでに必要なことをまとめましたので、参考にしていただけたらと思います。
AtCoderとは
AtCoderとは競技プログラミングを開催しているサイトです。
競技プログラミングとはプログラミングの能力や技術を競い合うコンテストのことであり、アルゴリズムを題材とした問題をプログラミングを使って解くことが求められます。
AtCoderでは高校生でも解けるような問題から世界トップの選手が解くような問題まで難易度の幅が広いのが特徴です。そのため、自分のレベルにあった問題に挑戦することができるため、初心者でも安心してコンテストに参加できると思います。
AtCoderのメリット
プログラミング初心者の方がAtCoderに参加するメリットは大きく2つあります。
- サイト上でコードテストができる
- コンテストが毎週開催されている
- 自分のレベルが把握できる
それぞれについて解説します。
サイト上でコードテストができる
プログラミングをする上で初心者の人が躓きやすいのは環境構築です。
AtCoderでは、サイト上でコードのテストができるため、環境構築の必要がありません。そのため、お試しで始めるときのハードルが低いです。
ただ、問題を解く効率を上げるためにも最低限プログラミング向けのエディタはあった方が良いです。
おすすめのエディタはVisual Studio Codeです。Visual Studio Codeは無償で使用できるのにもかかわらず、とても使いやすく、さまざまな拡張機能があるため、自分なりに使い勝手をカスタマイズすることができます。以下のサイトからダウンロードできます。
![](https://sabeblog.com/wp-content/uploads/cocoon-resources/blog-card-cache/2d12e02afa45389f9df5f8f7ed2e9d01.png)
コンテストが毎週開催されている
コンテストは毎週開催されています。そのため、コンテストに参加するハードルが低く、自分の都合の良いタイミングで参加することができます。
最初の頃は勉強したら勉強した分だけ解ける問題が増えていくので、可能な限り毎週参加するのがよいでしょう。解いた問題の数が多いほど、コードの書き方や実装力を身に着きます。
自分のレベルが把握できる
コンテストに参加すると、その成績に応じてレーティングが変化します。レーティングは400ごとに色分けされており、上から赤・橙・黄・青・水・緑・茶・灰という順番になっています。
レーティングがあることによって、全体の分布のどのあたりにいるのか、過去の自分からどのくらい成長したのかがわかるので、モチベーションの維持につながります。
初心者の方はまずは参加して灰色になること、慣れてきたら茶色を目指すことを目標にすると良いでしょう。私の感覚的には茶色になれば一般的なプログラミング・アルゴリズムの知識が十分に身についているかと思います。
始め方
まずはAtCoderのサイトにアクセスしてください。
![](https://sabeblog.com/wp-content/uploads/cocoon-resources/blog-card-cache/c251a9f89491340a113a707172a3cf57.png)
![](https://sabeblog.com/wp-content/uploads/2023/03/atcoder-register-1024x428.png)
右上にある「新規登録」から会員登録をしてください。
![](https://sabeblog.com/wp-content/uploads/2023/03/atcoder-register2-1024x835.png)
必須情報は「ユーザー名」、「メールアドレス」、「パスワード」、「国と地域」です。入力したら、個人情報の取り扱いについて確認し、チェックを入れた後、最下部にある「新規登録」をクリックしてください。
入力項目が少ないので、登録は比較的簡単に登録できると思います。
コンテスト参加前にやること
コンテスト参加前にやっておいた方が良いことを紹介します。
- practice contestで回答方法を学ぶ
- C++入門 AtCoder Programming Guide for beginnersで基礎を学ぶ(初心者の方のみ)
- Atcoder Beginners Selectionを解く
practice contestで回答方法を学ぶ
まずはpractice contestで問題の回答方法を学びましょう。
![](https://sabeblog.com/wp-content/uploads/cocoon-resources/blog-card-cache/c251a9f89491340a113a707172a3cf57.png)
C++入門 AtCoder Programming Guide for beginnersで基礎を学ぶ(初心者の方のみ)
(プログラミング経験者の方は読み飛ばしてください。)
プログラミング初心者の方はC++入門 AtCoder Programming Guide for beginners(APG4b)でC++の基礎を学ぶことができます。
![](https://sabeblog.com/wp-content/uploads/cocoon-resources/blog-card-cache/c251a9f89491340a113a707172a3cf57.png)
まずは1章、2章の内容を学習することで、易しい問題を解ける実力がつくはずです。3章以降は競技プログラミング向けの説明が多くなり、難しくて挫折する恐れがあるので、いったん後回しにしましょう。
言語はC++しかありませんが、「プログラミングの基礎」を体系的に学ぶことができるので、後々ほかの言語を学びたくなった場合にも参考になります。
Atcoder Beginners Selectionを解く
Atcoder Beginners Selectionとは有志の方がまとめた初心者向け問題集です。こちらにチャレンジして問題を解くことに慣れていきましょう。
![](https://sabeblog.com/wp-content/uploads/cocoon-resources/blog-card-cache/c251a9f89491340a113a707172a3cf57.png)
コンテストへの参加!
おおむね勉強を進めたら、次はコンテストに参加してみましょう!
コンテストは毎週土日21:00~開催されています。初めての方はまずはAtCoder Beginner Contest(ABC)に参加しましょう。
ABCはAtCoderで開催されるコンテストの中でも初心者向けであり、A~G,Exの全8問からなるコンテストで、後半になるほど難易度の高い問題が出題されます。
プログラミングの基礎知識があればA,B問題は解けると思います。解けない場合はコンテスト終了後に解説を見てみたり、APG4bなどで復習しましょう。
自分のレベルが上がってきたらより難易度の高いチャレンジしてみましょう。
コメント