So, I've been using LeetCode to do some topic-wise practice on DP.

In particular, I've been doing the questions tagged medium and hard.

However, while I can usually solve the mediums in a reasonable time frame, I struggle to make any progress at all on the hards. As a result, I've been wondering whether or not I should attempt them at all at this stage. My official rating is $$$896$$$, but I think I'm around $$$1200$$$ since I haven't completed $$$6$$$ contests yet. In terms of goals, I'm trying to get comfortable with DP questions at the range of Div 2C.

Thus, my question is two-fold

1) How would you estimate the CF rating of LeetCode hard problems?

2) Should I continue solving LeetCode hards or just look for DP problems in the range of rating $$$\pm\ 200$$$.

Some hard problems are easy and some hard are too hard. On an average I'd say all hard problems are an easy 1200+ in terms of CF but no more than 1900/2000 ig.

Should I come back to them when I'm a little more experienced?

Rn you should be giving every contest you can give, be it on CF,CC,TC,Atcoder,Leetcode..etc and upsolve till you feel just about right.

I've never solved a LeetCode hard problem in my 8 contests. Since I'm ~1500 rated, I'd say LeetCode hards can be reasonably bounded by >1500.

Thank you for the data point!

Nah most people on Leetcode don't do contests, this hard https://leetcode.com/problems/jump-game-ii/ is a simpler version of 1472C

That's an old problem, I assume the OP is asking about newer problems.

I guess doing all the classic dp problems is enough for Div2C. Some times, It's just a variation of a classic Dp. Some times, you have to observe the recurrence relation. But anyways, if you haven't tried cses problemset yet, here you can get to solve a curated list of problems from each topic.

That's an amazing resource — thanks for the link!

If you get stuck at anywhere, you can find the editorial blogs in codeforces.

It's hard to say, because it's a different style of problems. Codeforces problems are more ad-hoc and in the style of "puzzles", where you usually need mathematical insight to solve. Leetcode problems (hence, interview questions as well) usually involve more standard approaches and feel more like engineering challenges (often involving trickier code to write).

My general advice is: try to understand what your goal is. If you decided to start solving algorithmic questions to prepare for interviews, my personal advice would be to not focus too much on CF/AC contests (at least not the recent CF contests); instead, maybe solve some cses.fi problems, or do some Leetcode contests (and read that book about interview questions, I guess). If you're doing it for fun, I suggest you try to "learn as you go" (i.e., do a contest, read editorials, figure out what was missing in your intuition so that you couldn't solve the next harder problem, maybe try to generalize the idea and technique to understand its applicability; basically, whatever you feel it makes sense to spend enough time thinking about the missing idea that your brain would be able to recall these moments at a later point in time).

Also, don't rush it too much. Learning stuff too fast means you'll forget it just as fast. However, do it consistently.

+1. Do Leetcode for interviews, Codeforces/Atcoder for CP. In both cases, CSES dp section should be useful.

Somewhat around 1300-1700, some of them are a just standard or slight variations of a standard problem so it's hard to tell, like if you know about tries(DS) you will say that finding maximum xor subarray is very easy and a slight modification over it (say all numbers in the subarray must be < k) is also not difficult.