I need some suggestions on how to approach these problems. I know the concepts related to them but I am unable to apply my concepts to the problems that I encounter. For example how can I recognize whether a problem can be solved using DP or not, I'm able to recognize problems on Segment trees but I am unable to solve them and same is the case with problems involving graphs. Can anyone give me a list of problems in these topics starting from the very basic level so that I can improve one step at a time? asked 07 Nov '17, 23:38

That's kinda simple: you practice them, you practice them more, you keep practicing them  and you improve over time. Learn the concepts, practice solving these problems, upsolve contests, read editorials and codes by other contestants, try to challenge yourself with problems which are hard enough for you  but not too hard; that's all, no secrets here. Checking your profile  you are just a beginner who started short time ago and didn't practice much yet. It's OK to have hard times with all that stuff at the beginning, so don't get upset, be patient and keep practicing. answered 07 Nov '17, 23:54
Thanks @lebron. If possible please provide me with some basic level problems in these topics.
(08 Nov '17, 12:39)
This might be helpful . https://www.codechef.com/certification/prepare
(08 Nov '17, 12:42)
