DEV Community

Cover image for Enhance your algorithm skills: The ultimate guide to Atcoder in 2024
Fire Dingo
Fire Dingo

Posted on • Originally published at binary-fish.vercel.app

Enhance your algorithm skills: The ultimate guide to Atcoder in 2024

In this article, you will learn how to get started on Atcoder.

Just as proof, the link to my Atcoder profile is pasted below

My Atcoder Profile

What is Atcoder?

Atcoder is a Japanese website that hosts weekly programming competitions. Although Atcoder is a Japanese website, it also has decent English support. Atcoder has three main contests that they host regularly: Atcoder Beginners Contest (ABC contest), Atcoder Regular Contest(ARC), and Atcoder Heuristic Contest (AHC).
There are many other contests like the Atcoder Grand Contest that you can participate in, however, if you are a person who just started coding or Atcoder, participating mainly in Atcoder Beginners Contest is strongly recommended.

Some pros of starting Atcoder

So here are some of the generalized bullet points of skills you can get while doing Atcoder.

  1. You can learn more about your favorite programming languages like Python and C#.
  2. You can learn some of the important algorithms that can help you in your real-world project.
  3. Abstract thinking As you get better at Atcoder, you need more and more skills in thinking about the problem abstractly and simply.

The rating system of Atcoder

Before getting started on sign-up and competition, there is one more important thing in Atcoder. The rating system. In Atcoder, when you participate in a competition and solve problems, your ¨rating¨ either increases or decreases depending on how well you do in the competition. For every 400 points or rating, you become a new color.

  • 0-400 Grey
  • 401-800 Brown (Skill level about the same as a typical college student with computer science as their major)
  • 801-1000 Green
  • 1001-1600 Light Blue (People at this rank will most likely fill most of the needs of the average tech company)
  • 1601-2000 Blue (The skill exceeds the general high-standard requirement of all the companies)
  • 2001-2400 Yellow (From here, the level reaches a point where you are ready to be competitive)
  • 2401-2800 Orange
  • 2801-∞ Red (The highest color)

How to start your journey

Now that we know Atcoder, let’s start the journey. This section will briefly summarize the process needed to start Atcoder from sign-up to how to guide participating in the contest.

Step 1: Create an Atcoder account

The first step for any competitor is to create an account. To do this, first visit the official Atcoder website listed below.

Sign up here

Then, there is a “sign up” button in the header, so click it like the image below.

It is located in very top right side

Consequently, it will lead to the sign-up form, where you can fill out your new account username, password, and email. Some choices are optional, so only four of them are required. When you are ready, press the sign-up button to finalize the process.

The sign up page

If you have successfully created an Atcoder account, you have two choices; you can choose to wait for the competition or to try doing some sample problems before participating. From past experiences, doing some sample problems is strongly recommended for anyone who started Atcoder. So, let's try some sample problems.

Step2: Try solving some sample problems🚀

Firstly, here is the link to the practice problem. The website shows you all the steps and fundamental knowledge to participate in contests.
Then, click the link below to see your first problem.

Practice Contest

In general, there are two questions in the practice contest: "Welcome To Atcoder" and "Interactive Sorting." Although it is possible to solve both problems, it is recommended by the official Atcoder team to solve only problem A if you are a rookie. Problem B is for "interactive problems"- which only matters if you are in high colored rank.

Here is a solution to problem A. If your favorite language is not Python, there are answers displayed on the problem page for most of the languages Atcoder supports.

# -*- coding: utf-8 -*-
a = int(input())
b, c = map(int,input().split())
s = input()

print(str(a+b+c) + " " + s)
Enter fullscreen mode Exit fullscreen mode

Finally, this guide will tell you a way to start increasing your Atcoder skills by solving past problems.

Step 3: Use Atcoder Problem's Easy 100 to solve beginner-friendly problems

Atcoder Problems also has Medium 100 and Hard 100

The final step to becoming ready for the ABC contest is to start solving the "Easy 100" rated problems every day. Atcoder Problems is a very useful website when improving competitive programming skills, and although it is unofficial, the quality of the "Easy 100" problem sets is tested by hundreds of pro competitors.
If you finish solving all 100 problems, you should be well prepared to least solve problems A and B for the Beginner's contest.

Conclusion

In summary, this guide gave an overview of Atcoder from the rating system to solving easy problems.
When you are done with all of these steps or two, try participating in competitions. It is hosted weekly, so don't miss your chance of joining the real competitions. If you want to solve & get answers in English for past problems, Binary Fish(my tech blog) offers several free guides, so make sure to check that out as well.
Thank you for reading.

Top comments (0)