Hello Codeforces community,I have recently started participating in contests. Before that, I was just solving the A2oj ladder problems to get familiarised with Problem levels A, B, C, D. Now what I have seen in my case is that sometimes during virtual contests or in contests as well, I get stuck in problem level A as well.
So I would like to know if this happens with experienced coders as well? Also what do you think is the best approach to improve, whether I should focus more solving many more A and B problems until I become good enough to not get stuck on these, or should I continue practising C and D levels as well, hoping that the improvement in C and D will help with A and B as well. I mean should the approach be Breadth First where I become very good at A, then B, then C and so on or should it be Depth First, where I upsolve C and D as well and keep practising all types equally.
Some A's and B's can be quite tricky for some people, actually, since they usually focus on little tricks and observations that even some experts and higher can miss. A good way to practice might be to focus mainly on more complicated problems, but sometimes solve A and B to train your speed on simpler problem.
[Deleted]
Well my highest rating is expert, so at least my answer still has some value in it :)
Thanks for the advice. Really, A and B sometimes have good tricks associated
To me, solving A and B is like a game of pure luck, since standard algorithms either don't work or are just overkill. So it's like you either notice the correct pattern and solve it in 5-10 minutes or you spend a whole hour sitting at your desk feeling retarded.
Yes, it happens.
So what is your strategy? I mean I understand what worked for you may not work for me, just curious about whether you solve like a lot of problems in one topic before moving to other or do you solve few problems and move to next topics and upsolve during contests?
ground_0 his A and B are our D and E
It has also happened in combined division rounds.
You ever notice how every time a gray guy asks a question they always say something about solving topic wise?
not sure about color ..however for many beginners so many algorithms and data structures become quite overwhelming at first..
This is really strange because beginners need to know about 3 algorithms: binary search, DFS and prefix sums.
Absolutely true...but they don't realize it until they give 3-4 contests and upsolve them..
Isn't it like that?-> I was randomly solving problems and suddenly got stuck on a problem, then read the editorial. I got a new name DFS. Then I studied and solved some problems on it. And again I went to random problem solving. (Actually I was studying on DFS today for the first time.) Is it ok for a beginner who was introduced to CP(without any programming background) about 2/3 months ago?
This is the best strategy to follow. However, many beginners hear from somewhere 'you need to know lots of data structures and algorithms' and they end up trying to learn segment tree before they can solve Div2 AB. I am not saying it's bad, but it's inefficient. Going from easier to harder topics and learning things that you face in problems is more efficient and stays in memory for longer time.
I once as a low expert was able to solve Div 2 B and Div 2 C in an official contest. And I wasn't able to solve Div 2 A lol.
Ahmadsm2005 orz Last time I was here, you were expert. Hope you reach masters the same.
Thank you! Good luck to you too!
Sometimes A , but the chances of getting stuck on B are more than that of A
And it's a disadvantage, specially when you are the type of guy who can't move to the next problem without solving the current one , just like me ...
I can relate to that
Please don't remain that type of guy who can't move to the next problem without solving the current one. It may hurt real bad, especially in onsite contests like ICPC. Been there, done that. I am sure this can be avoided by trying.
Ofc not , I believe that changing and improving are one of the main factors contributing to your developement ...
The moment we stop changing or improving , that is the moment we go downhill ...
Yes it happens , many times. Also if you know cricket then the same scenario can be mapped as Master Blasters like Sachin Tendulkar getting bowled on very first bowl which happened many times.
KUCH BHI
Bhai mazaak nhi kr rha , tune jo itni gandi analogy di hai na , uss hisaab se tujhe newbie se bhi niche hona chahiye ,
Bhai A nhi ho to B to attempt kr skte hain same contest mein , par ek baar out ho gye toh dobara thodi khel skte hain ussi match mei
Tu toh jab out hota hoga to try ball bolke dobara khel leta hoga , par asli match mei thodi hota hai aisa
Ya you are right there is not a chance of replay in real match. But we can't map everything perfectly to any other ,some exceptions do exist! Also wait 2 more contest I will be below newbie!
Latter part: You mean high specialist or expert?
Depends on Luck!
Yeah. It happens sometimes. Once I solved A, C and D in a global round but couldn't solve B.
Let me guess. Is the problem B is harder than A, C, D you said is this problem ? I saw many experts stuck on this problem.
No. It was actually this problem from Global Round 8. And I didn't say it was hard. I couldn't solve it because I overkilled a simple idea.
Although the problem you said was also a nightmare for many but (un)fortunately, I was CM that time and had participated in Div 1.
Oh, yes, that problem made many stuck too. C is definately easier to think than B
Check My history :(
Even today :(
Yes. I've stucked at B several times.
Yes, and I think usually it's for one of two reasons. I'll even limit myself to just Div2A problems in recent memory.
(1) The problem statement is complicated, confusing, etc.
In my opinion these kinds of issues should be caught or fixed earlier in the development stage of a contest.
This can be further described by some (not necessarily mutually exclusive) subcategories.
1a. The setup/game/premise in the problem is (relatively) somewhat convoluted and described in an unclear way.
1b. It contains a lot of information, values, and variables to keep in working memory, which can get overwhelming or confusing.
1c. The wording of the problem could have been phrased less ambiguously (understandable, since technical writing is hard especially when English is not your first language).
1d. The problem statement is just long.
(2) The problem requires a simple insight which ends up not being as obvious as the problem setter and coordinators had expected. Thus, the problem is genuinely difficult.
Gauging the difficulty of an insight is difficult, so I find this more understandable.
I actually like these types of insight-based problems (see discussion here) but I understand that it can be frustrating for people who just aren't able to see it.
2a. The problem is guessable, but an actual formal proof is more involved than usually expected from a Div2A problem. This trips up people who refuse to do "Proof by AC".
Anyway, here are some examples from the past few months, in no particular order, with a less-than-usual solve rate and/or higher-than-usual difficulty rating. I don't want to call out any problem setter as having bad writing, since I respect that making a problem set takes a lot of work and not everyone should be expected to be masterful in English, especially in technical writing. Still, I think you can make your own judgments on which of the following problems are hard to read and which are actually hard.
1393A - Rainbow Dash, Fluttershy and Chess Coloring
1354A - Alarm Clock
1339A - Filling Diamonds
1366A - Shovels and Swords
1373A - Donut Shops
1365A - Matrix Game
1364A - XXXXX
2a really important, if your div2A is harder to prove than div2F miss me with that shit.
I solved my first D(div — 2) a few contests back :P(The last educational round if i remember). Sometimes E with no B other times E with no C but mostly A, B, C are easy enough(atleast if you can't solve then make a reasonable guess)
Yes, In Ashishgup rounds.
Yes.
Bonus
Thanks for sharing that! I can only imagine how saddening those times would be, but its great to see you have reached International Grandmaster level now. Thanks
Yes I personally have such experiences. Especially when Div2B is implementation-heavy than usual, because I am really bad at coding. I personally hate when Div2B problem is about some $$$H \times W$$$ sized 2D-grid and inputs are bunch of * and # characters, since I mess them a lot. This occasionally happened even after I reached 2000+ rating. (Mostly this is because of my laziness which makes me not practicing implementation enough)
(Edit: I found it) Here is an example lol
I had no idea how to solve Div2B except using Fenwick Tree. I just used my library code and got AC without that much difficulty, but I felt very bad about myself unable to think and come up with intended proper solution when it isn't that difficult.
For advice, I recommend solving Div2A-B level problems until you are comfortable with those. Topic-wise practicing would not help much since there are not that many diverse topics in Div2A-B level problems. I personally recommend E869120's training method link even though there were some disagreeing comments back then.
Yes. How can I forget this.
I remember sitting idle, staring at the screen, rapidly switching questions A-to-B, B-to-C, C-to-A. Panicked because of not being able to solve even a single question, and came out of the contest, bare-handed. The thing is not to get demotivated and try harder in the next contest.
In one Div3 contest, I as a candidate master was not able to solve A.
This one is really bad, couldn't do B in 33 minutes.
Speaking only for myself, occasionally I’ll get them wrong on the first submit or fail system tests because my solution wasn’t actually right and I didn’t think for long enough, but I almost never get stuck on them for a long time.
Here
yes, in the last contest I got huge rating drop because I was stuck on problem A for nearly 40 minutes and did not move to next problem which I found easy.
More bad happened with me, i jumped directly from expert to pupil. Can you give me some suggestions >