This series of videos are focused on explaining dynamic programming by illustrating the application of DP through the use of selected problems from platforms like Codeforces, Codechef, SPOJ, CSES and Atcoder.
After going through this series, you should find yourself confident in approaching dynamic programming problems and also implementing them in a reasonable amount of time.
I will also live code and submit the solutions to the problem on the coding platform from where the problem comes.
Problem 1: Dice Combinations
Source: CSES
Problem link: https://cses.fi/problemset/task/1633
Explanation: https://youtu.be/5gd5jptXWAM
Problem 2: Coin Combinations I
Source: CSES
Problem link: https://cses.fi/problemset/task/1635
Explanation: https://youtu.be/5BdAl6gfusg
Problem 3: Coin Combinations II
Source: CSES
Problem link: https://cses.fi/problemset/task/1636
Explanation: https://youtu.be/-pXjopzMVrE
Problem 4: Grid Paths
Source: CSES
Problem link: https://cses.fi/problemset/task/1638
Explanation: https://youtu.be/V64F4wlodUM
Problem 5: Book Shop
Source: CSES
Problem link: https://cses.fi/problemset/task/1633
Explanation: https://youtu.be/qpNy2nuSuaI
Problem 6: Array Description
Source: CSES
Problem link: https://cses.fi/problemset/task/1158
Explanation: https://youtu.be/d1H5JylYG4I
Problem 7: Edit Distance
Source: CSES
Problem link: https://cses.fi/problemset/task/1639
Explanation: https://youtu.be/Ev80c1oIRFg
Problem 8: Rectangle Cutting
Source: CSES
Problem link: https://cses.fi/problemset/task/1744
Explanation: https://youtu.be/LdynQjWsO5Q
Problem 9: Two Sets II
Source: CSES
Problem link: https://cses.fi/problemset/task/1093
Explanation: https://youtu.be/TOsD3BkIKoQ
Problem 10: Beautiful Array
Source: Codeforces
Problem link: https://codeforces.me/problemset/problem/1155/D
Explanation: https://youtu.be/IgBLv32QFoQ
Problem 11: Beauty of Tree
Source: Kick Start
Problem link: Long link
Explanation: https://youtu.be/ueLRceYVcdE
Problem 12: Catch Some
Source: Kick Start
Problem link: Long link
Explanation: https://youtu.be/ljLIrNKLANE
I am quite confident that many beginners/intermediates will definitely enjoy watching this series on dynamic programming and it will definitely help in getting better at dynamic programming and problem solving in general. I have tried to teach in a way such that not many prior prerequisites are required to understand the explanations even to the harder problems.
If people find this helpful then I will make sure that this list of problems will keep growing, cheers!