jaackxyz's blog

By jaackxyz, history, 4 years ago, In English

Hello Codeforces,

Let me start with confession: I feel I suck at competitive programming.

This is kind of embarrassing, because I work as software developer for over 10 years!.

Despite the fact I feel really comfortable with C++/implementation, even easy "observation" or "ad hoc" problems are often difficult for me. I can usually solve A and B during contest — but slowly. Doing C is waaay beyond me.

As I'm writing this, I've solved ~270 problems on CF plus ~50 more on other platforms. This includes most of A2OJ "ladder" that targets C level. I believe this amounts to 600-800 hours of dedicated practice.

Result? I'm still Pupil. I've reached Specialist, but not for long, so it was more like luck that real achievement.

When I see ratings of other people, rarely I see someone stuck at Pupil level for so long. It seems so easy for many people to reach Specialist and beyond.

So I wonder, is it time to give up my ultimate goal, which is Expert?

If someone invested, lets say, 800h hours for focused CP practice and still Pupil... should "total lack of CP talent" be declared and is it time to move on?

  • Vote: I like it
  • +48
  • Vote: I do not like it

| Write comment?
»
4 years ago, # |
  Vote: I like it +21 Vote: I do not like it

Just saying if I can reach expert (with some luck obviously) anyone can. So if you really want that mental satisfaction don't give up, solve up to d,e in every contest , with some luck you will be there.

»
4 years ago, # |
Rev. 2   Vote: I like it +9 Vote: I do not like it

I am not an expert but I have been in this situation, and I feel 270 is quite a low number. You can just look at the bars. You have just solved 20 problems for every rating. And that's really very low.

Spoiler

I would really say to give it at-least 2years and solve more problems, do upsolve the contest, find a community of Cper maybe discord is a best place imo. You can even dm me whenever you like. Maybe we can discuss how to practice and how to participate, why am I helping you ? Because I have dm a lot of people too in my early stages, and some of them helped me, so do I want to.

»
4 years ago, # |
  Vote: I like it +102 Vote: I do not like it

Give up once you start feeling like you aren't having fun. I am of the belief that people should not do competitive programming if their only motivation is external.

However I think you could probably refine your practicing a little. If your 320-ish problems amount to 600-800 hours of dedicated practice time, that means you're spending an average of 2-3 hours per problem. I don't know if, how, or when you decide to read editorials, but I'd suggest maybe trying a larger number of problems.

Usually, if you think about a problem, and are completely out of ideas for 30 minutes straight, that's a sign that you should at least get a hint for the problem (personally I just outright read the editorial). This changes if you manage to solve the problem on your own after those 2-3 hours, but if you use the editorial after that time, you can probably cut an hour or so of "dead" time in which you've already exhausted all your ideas.

»
4 years ago, # |
Rev. 2   Vote: I like it -16 Vote: I do not like it

Here is a comparison of how many problems I've solved in comparison to how many you have solved. (I am purple).

Competitive programming is hard. You're not lacking "talent" necessarily, with more problems, you'll get there.

Good luck!

»
4 years ago, # |
  Vote: I like it +201 Vote: I do not like it

To estimate your potential, simply multiply your mass by the altitude you are at and the gravitational constant. Here's the formula: m*g*h.

  • »
    »
    4 years ago, # ^ |
      Vote: I like it +3 Vote: I do not like it

    You've solved 800 probs, christ CP is no joke. That's why I love this site, the level of talent is crazy. Gj!

  • »
    »
    4 years ago, # ^ |
      Vote: I like it +79 Vote: I do not like it

    Man... He meant something else...

    Spoiler
»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

After the contest, look at all the questions in the contest and its solution, and understand them fully if possible.

Estimate if it is possible for you to solve the problem in contest time if you understood more concepts, or avoided some errors. That is a potential that you can reach. Upsolve them.

»
4 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Competitive Programming at the top (Leg. GM) maybe about potential. But before that, I think it is all about how much tougher questions you have solved, what your state of mind, contest experience, and luck as well. So just keep solving problems a little out of your comfort zone and you will be improving. This is what I did so may work for you as well.

»
4 years ago, # |
  Vote: I like it +18 Vote: I do not like it

Your cf acc is 1 year old, you're saying you've solved less than 1 problem per day and spent 2 hours+ per problem. Something doesn't add up. Go solve more problems.

»
4 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it
rarely I see someone stuck at Pupil level for so long

See my graph I was stuck at Newbie for 7 8 months

  • »
    »
    4 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    wow ur rating graph is the pinnacle of grit :)

»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

This is kind of embarrassing, because I work as software developer for over 10 years!.

Nothing to be embarrassing because competitive programming and software development are not that related to each other.

Other than what others have suggested, you can also do some specific topic trainings to make sure you are familiar with all popular topics. Solving more problems is more effective when you already know and can apply all the common algorithms and data structures.