I'm finding it very hard to practice CP. I can't up-solve myself! I am stuck with solving only 2 questions per contest or sometimes none. And even if I do solve any question, it takes me ages to figure logic. I enjoyed CP but my growth seems stagnant.
I tried solving questions of same difficulty levels.
But after seeing others solve same question in 1 minute while it took me 15 minutes, I feel like I'm dumb. Same for AtCoders. I'm somewhat okayish in CodeChef but nothing spectacular. I'm loosing my motivation for CP.
I just wanna improve. I want to develop that instinct where you realise in a sec what the question is about.
I don't know if anyone will comment on this because it's my first blog hehe, but thank you if you do. I would be grateful for you.








same here bud, but a thing i know is that i am not losing interest in it, no matter how much time it would take me devour the logic of the questions.
Yes Sir!
On training instinct I like solving problems that takes me ~30 min (or I give up after that amount of time). And then I write down a note of what instinct I was supposed to notice. In theory, you're supposed to figure out how things work over time but I'm not that good yet so don't fully trust what I say. (and if this is not a good way to practice please tell me lol)
On other people I feel like this is something that will never go away. Everyone says not to compare yourself to others but that's easier said than done. At the very least, recognize that these people: 1. are fairly rare in the real world — think of how many of your friends are good at CP, 2. work hard and for a long time, and 3. are statistically likely to probably be just smarter than us.
On motivation just try to enjoy it, but if you treat CP as a hobby then you can take a break if it's not fun anymore.
I disagree a bit if you wanna do it to become a good programmer then you'll have to suffer a bit, even when you don't feel like doing it you'll have to push through and focus.
Yes, it started out as hobby but maybe me comparing myself to others made me lose a bit of interest in it.
Thank you so much for your suggestions!
Mate your problem solve count is very low (as seems in CodeForces), try to do problems from 800 up untill your rating += 200. Try doing the CP31 sheet by TLE Eleminators and A2OJ ladder (according to your rating it is classified) and learn a bit of Maths and get good in STL of the language you're doing and most important off all don't get dis harted. Read the book You Might Break but it's okay (I will send you) hope it helps as i h've gone through the same phase. Good Luck
I solved mostly LeetCode before. I solved okayish amount of question on CodeChef.
My college takes 90% of my time as I am a Day Scholar and commute nearly 66km a day (to & fro). I would solve more questions as you suggested and would do all the sheets you mentioned.
My college is a shit ass college with mandatory 75% attendance plus my grades are also decided by my attendance.
Thank you so much :)
Oh I understand. Then just do solving structurally. I understand your frustration and as CF is pretty different so you'll have to start structurally i.e Start from 800 rated problems on CodeForces sorted in descending order when you start realizing problems then shift to A2OJ ladder alongside CP31 from 800 problems first it may take you some time no need to worry about that. Then when you complete it. Move to CP31 900 and so on. If you need to ask anything feel free to ask and I would love to help. Good luck
Thank you so much once again!
BECOME PENGUIN !!!
I wish I could. 99.99% of my problems would be solved if I were to become a penguin.
Buddy, there's no need to compare yourself to others right now. Others solve problems in a minute not because they're natural-born geniuses who can quickly check, prove, and intuitively grasp everything in their heads, but rather because they've solved similar problems a thousand times and even find it boring. Programming has been around for many years, and coming up with a unique problem is practically impossible, and even if you do, it will be extremely difficult. All problem-solving is based on recognizing patterns you've observed throughout your training, solving other similar problems. When you have very few patterns in your arsenal, you'll see an idea for the first time and not understand what to do with it, trying to prove something, or somehow twisting and turning an array or numbers. So don't get upset if it takes you a long time to solve problems or if you can't solve them at all. Once you've solved 1000+ problems, you'll often find yourself saying, "Wait, this problem is very similar to one I've already solved," or running through more options in your head: "Okay, we need to find the number of good array segments. There are probably two pointers here. Or maybe a binary search would be easier? A sliding window? Or maybe a binary search won't work here? I see that all the numbers in the array are <= n. Perhaps this is a hint that we should somehow use a counter array," and so on.
My personal advice:
1) Focus on the volume of problems, not on a rigorous proof of any one. Solving 10-20 problems a day is better than solving a single problem. Because with 10-20 problems, you'll learn more.
2) Try setting timers during practice. Personally, I set the following timers for myself (for my personal level):
1200 — 15 minutes
1300 — 20 minutes
1400 — 30 minutes
1500-1600 — 40-80 minutes
And if by the timer's end I haven't started writing code or writing edge cases for my idea, I give myself a maximum of +5 minutes and go look at the analysis.
And 90% of the time, after reading the analysis, I realize that if I had continued sitting there, I probably wouldn't have figured out the solution and probably would have wasted several hours of my time.
Also, I'd like to know what "okayish amount of questions on CodeChef" and "leetcode problems" mean.
Because problems on leetcode and Codeforces have different formats. Leetcode is based on algorithms, while Codeforces is based on ideas and implementation. You might know a lot of advanced algorithms from Leetcode, like segment trees, graphs, and substring search algorithms. But the problem is, you simply won't get to these problems in Codeforces contests because problems below 1400-1500 don't include any such algorithms. Even I'd say 1700-1800.
Also, it's important to solve not just a large number of problems where all the problems are elementary, but also problems that are slightly above your level, so you feel uncomfortable solving them, but still manageable.
So, let's say your current level is X. You solve 50-60% of problems at this level on your own, without prompting, without analysis, and without spending a week (let's say).
Then you should solve both these problems at your level and problems way above you, which you can only solve 20-30% of the time on your own.
If you only solve problems that you can solve 80-90% of the time, you won't learn anything new.
If you solved a problem, it means you already knew everything you need for this, and therefore didn't gain anything new from it. If you didn't solve a problem, it means you gained new information that you can use in the future.
Aah yes, I do solve similar kinda questions and with same difficulty level. Thats why I cant upsolve myself. I solved ~110 questions on CodeChef, I just started CP seriously prolly last month. Yep, in my winter break. I used to solve questions between range of 800-1000 on CF. But not much problems.
Honestly, I got a lil upset on how some of my peers could become pupil in 2-3 contests while I'm still... yk stuck... Thats why I lost motivation.
Realised from yall that I was doing CP completely wrong. I never set timers, I always used to take my sweet time. Secondly, I only solved questions in my comfort zone. I used to drop out any question which I couldn't solve. And I'm realising now that CodeForces != CodeChef.
I will follow your advice on timing myself and solving more questions. Thank you so much! I am grateful to you. I hope I too will be able to be a specialist like ya.
same here, man! It really is frustrating sometimes, especially when you look at other people. I've been losing consistency and motivation lately. But the truth is, it's actually stupid to compare oneself to others. See the thing is, for example, you'll notice for some people, it takes 5 miniute to build a logic when you take 20, with the same person, there might be some problem that they take longer to figure where you just get on it instantly.
In the end, consistency matters, there are a lot of good people suggested good things, be sure to try them. My uni and commuting takes the whole day too, i have to travel 70+ km each day. I'm not anywhere good either. Just sharing my thoughts.
aah, relatable. I just get tired or doze off on my desk after a long day :(