Блог пользователя ldn694

Автор ldn694, история, 6 лет назад, По-английски

Hello peoples of codeforces, I hope you are doing well. This is my first blog and I want to ask a question: For people who can solve A, B, C Div 2 problems comfortably, how to improve their skills to solve harder problems within the contest time? I usually solve the first 3 problems from 45 minutes to 1 hour, but then I will find myself stuck coming up with a solution to the problem D. Without solving 4 or more problems per contest, I will never reach purple :(. Are there any tips for me to overcome that? Which tags do D problems usually have? What is the average rating of the 4th problems? I would appreciate your helping. Have a nice day.

  • Проголосовать: нравится
  • +44
  • Проголосовать: не нравится

»
6 лет назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

Auto comment: topic has been updated by ldn694 (previous revision, new revision, compare).

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +17 Проголосовать: не нравится

What I am finding is that Div 2 D is a kind of a defining line as to where codeforces problems start to depend on algorithms more. Obviously A and B tend to be based on observations, and even C mostly utilizes sorting, searches, or basic graphs. If this is the case, I would recommend delving deeper into the topic when you come across a problem you do not understand, covering your bases more by category rather than broadly. At the very least, this is what I am trying and what I think would most effectively break out of the plateau at this level.

  • »
    »
    6 лет назад, скрыть # ^ |
    ← Rev. 2  
    Проголосовать: нравится +8 Проголосовать: не нравится

    I usually just randomly get problems with the rating between 1800 and 2100 and try to solve them regardless of their topics. That may be the problem in the way I practice. Focusing in some particular fields rather than a broad but shallow understanding of many categories is good advice though. Thank for replying me btw :)

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +27 Проголосовать: не нравится

Difference in difficulty is higher between Div. 2D and Div. 2C than between Div. 2C and Div. 2B. So it's okay that you can't solve Div. 2D. Apart from the standard advice (solve more problems ...), I advise you to think about Div. 2D in the same way you think about Div.2 A-C. Usually, the number of participants, solved Div. 2D is smaller because this task is D, not because of the complexity.

A perfect example of this effect can be seen in problems 1400E - Clear the Multiset and 448C - Painting Fence. These tasks are the same, but have different difficulty values, 2200 and 1900.

  • »
    »
    6 лет назад, скрыть # ^ |
     
    Проголосовать: нравится +15 Проголосовать: не нравится

    Thank for your advice though. Sometimes, knowing that I am solving a D problem just makes me feel less confident, which leads to wrong thinking and make the problem become harder than its original difficulty.

  • »
    »
    6 лет назад, скрыть # ^ |
     
    Проголосовать: нравится 0 Проголосовать: не нравится

    What if it's because of rating inflation?

    • »
      »
      »
      6 лет назад, скрыть # ^ |
       
      Проголосовать: нравится -6 Проголосовать: не нравится

      Do you mean these 2 problems? Even if we assume that the reason is inflation, we can compare the ratio of those who solved this problem to the total number of participants: 436/14710 vs 160/2596...

      I didn't solve this problem(1400E) during the contest. I didn't believe in the correctness of my solution. Exactly because of this reason. I didn’t think the problem could be solved so easily.

      Может все же сам виноват, но именно буква E в задаче меня взволновала.

»
6 лет назад, скрыть # |
← Rev. 2  
Проголосовать: нравится +44 Проголосовать: не нравится

After reading the title, I thought you will give tips to us xD

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +27 Проголосовать: не нравится

One extremely important thing is confidence.

Of course, you need to solve enough problems and know the algorithms / ideas needed for a div2D, but even when I was at that level I only solved ABC in contests for a while because I thought "I'm not good enough to solve D." However, after I solved D in one contest, I got confident I could and then weirdly enough I started to do it consistently.

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +11 Проголосовать: не нравится

PRACTICE

»
6 лет назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

Have a look at 1400-1900 section of this

»
6 лет назад, скрыть # |
 
Проголосовать: нравится -32 Проголосовать: не нравится

This is where codeforces becomes repetitive. Even if you keep giving contests you will not improve. Codeforces is highly competitive platform. So started solving at other platforms like codechef and leetcode. I am improving at applying more advance data structures like segment tree.

»
6 лет назад, скрыть # |
← Rev. 3  
Проголосовать: нравится +38 Проголосовать: не нравится

1) Solve three problems
2) Solve one more

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +26 Проголосовать: не нравится

I think it's good to be specific about what you want to improve, but sometimes I think these blogs are too specific. I think most useful tips you will receive will be similar to tips for general improvement.

I usually solve the first 3 problems from 45 minutes to 1 hour, but then I will find myself stuck coming up with a solution to the problem D.

I think this is actually somewhat expected. Typically difficulty of problems in a contest follows some sort of steeply-increasing curve. So I can easily imagine a contestant that takes 5 minutes to do A, 15 minutes to do B, and then 40 minutes to do C. So how long should they expect to spend on D? Probably more than 60 minutes, which is all the time they have left -- so it's not weird to solve ABC and not D, even though you only spend half the contest time on ABC.

So maybe you should work on solving ABC faster as well, to give yourself more time for D.

Basically, I think you should just continue to practice and improve in general. It looks like you've already improved a lot since you started, so good luck!

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +3 Проголосовать: не нравится

You need to know some data structures like BIT or SegTree(little bit harder)

And math skills are required too.

»
6 лет назад, скрыть # |
← Rev. 2  
Проголосовать: нравится -8 Проголосовать: не нравится

You can become a Master by solving only ABC.
chromodynam1c
Have a look at my profile. I have solved only ABC in recent contests, still, I am very close to CM(Just one rating point away).

  • »
    »
    6 лет назад, скрыть # ^ |
     
    Проголосовать: нравится +25 Проголосовать: не нравится

    To be perfectly fair, the last contest wasn't exactly a normal contest. D was harder than usual (I and 10 out of 11 of my purple friends didn't get AC); only 16 people passed the systests for E out of 167 people who passed pretests; and while I disagree a lot of people found C harder than usual. The FSTs on E were so impactful that CF Predictor said +8 before systests (which would keep me in CM) but I got +42 after system tests.

    Not only that but in the official standings, I was the highest ranked out of everyone that got ABC but only because of time and no WAs.

    In a normal contest where I'm at the speed I'm normally at, ABC would get me at most -50.

    In sharp contrast, my previous contest I had ACD (I FSTed on B) and I got -18. Only solving ABC would've lowered my delta even more.

    Not to mention that I got CM in a contest where I solved ABCD. In almost all rounds I only solve ABC, I get negative delta.

    Also, "solving ABC" is something that varies highly depending on the contest. Not all contests have 6 problems. In 5 problem rounds, the problems are harder than their 6 problem round counterparts to keep the round balanced.

    Just as I am a bad example in this situation, it isn't exactly fair for you to say "I have solved only ABC in recent contests, still, I am very close to CM(Just one rating point away)." since as I said this contest wasn't a normal contest and if it were any other round you would get far less delta. If you don't count the last contest, the round where your rating peaked in you had ABCD where D had subtasks, yet you only got +7 (presumably because of your time and WAs on C). 4 out of the last 5 rounds you participated in before that one had 5 problems, and the other one was an educational round where you got negative delta.

    TL;DR: Normally you can't actually get Master from solving only ABC. Last round was unusual.

    • »
      »
      »
      6 лет назад, скрыть # ^ |
      ← Rev. 3  
      Проголосовать: нравится +3 Проголосовать: не нравится

      What to do to get out of expert? I am struck for 4 months. Not that I left my training. During my 4 months, I solved around 200 problems. Still I am exactly where I was in 4 months ago and I am not even being able to reach my previous rating that I achieved 4 months ago. What to do? Everytime I do better turns out I did better to be fucked up next time. How you improved so quickly? Please dont say just solve problems because I am solving problems and I see editorial if I am completely struck, not struck for 1 hour or something like that but completely struck.
      I need your help badly. Please.

      • »
        »
        »
        »
        6 лет назад, скрыть # ^ |
         
        Проголосовать: нравится +14 Проголосовать: не нравится

        One of the things that helped me in improving was being in Discord communities where I can meet and talk with lots of people better than me. As they say, you are the average of the five people you spend the most time with. You get exposed to more problems, more ideas, more ways to think. Obviously, Discord isn't the only way to do this, it's just what I'm comfortable with.

        Solving problems isn't something that'll get you there on its own. You need to learn from the problem you solved. If you got it slow, why? If you got WA, why? What can you do to prevent it in the future? Did you miss a critical observation? What path of thinking would've led you there? These questions are critical, and sometimes you can't find the answer on your own.

    • »
      »
      »
      6 лет назад, скрыть # ^ |
      ← Rev. 2  
      Проголосовать: нравится 0 Проголосовать: не нравится

      The point I wanted to make was that we can get a very good rating by fast solving. Ex:
      1. The last contest
      2. The recent 5 problem contests
      3. CF round 671 which had 5 problems <= 1500
      4. The Div2 rounds wherever there is Div1+Div2
      You can't say all these rounds were unusual, right?

  • »
    »
    2 года назад, скрыть # ^ |
     
    Проголосовать: нравится 0 Проголосовать: не нравится

    one rating point away till eternity now

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +21 Проголосовать: не нравится

You just need to practice more. After every contest make sure to upsolve at least until D. Other than that, there's not much else to say.

»
6 лет назад, скрыть # |
 
Проголосовать: нравится +8 Проголосовать: не нравится
  • The rating of the 4th problem (Div 2) is quite inconsistent, but it is usually around 1700-1900 if I am not mistaken
  • D div 2 can have almost all of the tags available, except for more complicated algorithms like FFT, flow, ..., and it requires you to have some knowledge about graphs, DP, Data structures... beside observations
  • I suggest you to take a look at this page, it was quite helpful for me when I was at expert like you are now.
»
3 года назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

I can't solve D div 2 too. But I usually solve ABC from 20 to 30 mins. That's probably why I reached purple =))