lambdadelta's blog

By lambdadelta, history, 14 months ago, In English

Hi all, me and my team are participating in icpc this year (we don't really have any hope lol, we're just doing it for fun). So I thought I should probably try to get better at DP. So I watched some lectures on knapsack, LIS, LCS and so on. However, I still don't have much idea how to exactly think about a DP problem:( I was wondering if some DP gods could help me out here, like maybe guide on what problems to begin with so I can gradually get better. Thanks in advance!!

  • Vote: I like it
  • +3
  • Vote: I do not like it

| Write comment?
»
14 months ago, hide # |
 
Vote: I like it +6 Vote: I do not like it

Why do I keep getting downvoted for asking questions :(

»
14 months ago, hide # |
 
Vote: I like it +9 Vote: I do not like it

as u practice more problems, u will get better, start with cses problemset.

»
14 months ago, hide # |
← Rev. 2  
Vote: I like it +6 Vote: I do not like it

I'm not a DP god, but you can start with the usaco guide or cses to begin

»
14 months ago, hide # |
 
Vote: I like it +3 Vote: I do not like it

Hi! I'm no expert in DP, but these pages have typical DP problems to get started, ranging from easiest to most difficult.

Page 1 (at coder) Page 2 (cses)

Also, if it helps, I think of DP as a recursive function, asking myself what a DP state stores, for example: << f(i) gives me the maximum value I can get from position "i" >>