How to get started on Codechef?

I have just joined. Please advice me.

Welcome to codechef!

What is Codechef? It is an initiative by Directi. It is a global programming community which focuses on friendly competition - with a large community of problem curators, solvers.

One important thing is to realize that there are three official contests:

  1. The Long.

  2. Cook-Off.

  3. Lunch-Time.

The Lunch-Time, is a 3 hour contest, with 4 problems which are supposed to be for school students preparing for IOI. But, do NOT take it lightly, the contest is of high quality problems, and it teaches you a lot of concepts, ideas and new tricks!

The Long, the most popular contest on Codechef, is a 10 - days long contest with 10 problems, of various difficulty ranges from a cakewalk problem to a hard problem. The unique format of this contest makes it a great contest for the beginners.

Cook-off is a 150 minute short contest with 5 problems of various difficulty ranges from an easy problem to a hard one.

Start easy - Practice Problems :

First of all go and solve the first problem(The Life, the Universe and Everything). If you can solve it then you are ready for the next one and the next and so on. They are all beginner CP problems and don’t require and prerequisites. They are very easy. Make sure you pass a problem and then go to the next. You can skip some in the middle. Once you are comfortable with beginner problems you can go to the easy section.

As a beginner you must start with simpler challenges until you get a feel of how Codechef works and how to code and submit your solutions. But beware! All problems in that list are not really easy. The best way to choose an easy problem is by looking at the number of successful submissions. The more successful submissions a problem has, the easier the problem is!

If you are unable to solve a problem don’t hesitate to look at the editorial. Now would be a good time to mention that not all problems on Codechef have an editorial. This is true especially for old problems. All problem that appear on current official contests have an editorial.

Find easy problems with editorials
If you wish to attempt to solve only those problems that have an editorial, then you should go to the All Contests page which have names like “May Challenge”, “April Cook-Off”, “April Lunchtime” etc. These are official Codechef contests. Find the problem with the most number of successful submissions. This is the easiest problem in the contest and since this is a contest problem it definitely has an editorial.

Once you are comfortable with the platform and with solving programming challenges, you can start trying to solve harder problems. You can, for example, start practicing in the Medium or the Hard section. One very good way to improve proficiency and speed is to participate regularly in contests.

Next on you need to start with hard problems. For this you will need to learn about C++ STL. You need to learn about using vectors and queues. Also you need to learn about sorting and searching techniques. After that you are already an intermediate programmer.

After that all you need is just Practice and Patience. Get your WPM typing skills over 120wpm, or as close as you can. Speed matters.

Believe me it will be hard. If it were easy everyone would do it. Don’t lose hope if your solution didn’t pass the first time. Go through the editorials, see others’ solutions and don’t leave the problem until you have come up with a solution that passes.

Good Luck!


Also Practice at least for 1 month before attempting any contests.

how to post any qoestions for discussion guys ?? i am not allowed to do so , i think

I don’t know why some of you asking same questions continuously again and again in this session. Don’t you know there exist a web search engine i.e., Google. Use it wisely before posting any type of questions here.

I have found two links that resembles this questions:- Link1, Link2. But they are not least. as there are many other links you can find it by yourself.


@bansal1232 Yes. You are right. There are many such similar questions being asked!

Then y are u answering it? Because of getting karma?

No, I like helping new people. If I wanted karma then I would create fake accounts to get it. But I don’t because I care about the community.

You don’t need to hurry! Start slow.


They also know better about it.It is not a question to be asked.

If one really needs to ask something ask about some problem in coding languages or some question.

1 Like

@while_1 ?

I think the asker should at least make a simple search before asking the question, same goes for the answerer. Please do not answer the question if you find a similar question with an accepted answer on the community, you should give the links to that question. If you want to add some new points, answer on that similar quesion. I strongly think there should be some specific guidelines enforced about answering and starting new threads.

Yes. I reported the question now!

@rohit_jere_rj why flag my q

Basically being newbie first of all start from the most submitted problems so that we are aware that most people have checked as u might be seeing in submission list that some codes are correct compare to many submissions. And another thing is that which is must is never give up as it is the need for all of us even I’m also newbie that’s why I’m sharing my views. Thank u

What you can recommend when you yourself has only 1 star even after submitting 662 AC solutions. you should focus on your rank. After reading this comment don’t start any kind of discussion cause that’ll be waste of time, go and practice Medium section. Hope you got me. Laddus can’t fetch you money.

@neget Yes, I am trying to practice these days, but sometimes things don’t go in your way. Let’s see in Lunchtime, hope I can improve my rank. Cheers!

PS - if you want to have direct chat, mail me -