Dynamic programming/12 modules/74 lessons
Derive the recurrence.
Stop trying to recognise it.
The course keeps returning to the same five questions: the state, what it stores, what it depends on, the decisions, and how the candidates combine. You learn to derive the code from those answers.
100 founders maximum · then $179
Knapsack · 40 items · capacity 60
Every choice, explored
··· 36 more levels ···
1.1 trillion
paths
What it actually depends on
··· 40 rows × 60 columns ···
2,400
cells, filled once each
Five questions. Every problem.
the method · asked in this order- 01
What is the state?
Describe the smallest subproblem whose answer does not depend on how you reached it.
f(i) — the step you are on - 02
What does it store?
Say in one sentence what the answer for that state means.
f(i) = ways to reach i - 03
What comes first?
Identify the states this one reads. Those dependencies determine the fill order.
f(i) reads f(i-1), f(i-2) - 04
What can I do?
List every legal decision available from the state.
take 1 step · take 2 steps - 05
How do the candidates combine?
Add when counting; minimize or maximize when optimizing.
f(i) = f(i-1) + f(i-2)
What changes in how you work
Not more solved problems remembered. Reasoning clear enough to rebuild the solution when the problem changes.
“Which DP pattern is this?”
→“What must this subproblem remember?”
Guessing a recurrence from memory
→Deriving it from the decisions you can make
Copying a table-filling template
→Choosing an order from the dependency graph
Hoping the code is correct
→Explaining why every state and transition exists
the problem shapes
Seven shapes. One method.
Every problem in the course belongs to one of these families. The five questions stay the same; only the answers change.
-
Linear
one index
-
Grid
two indices
-
Knapsack
capacity as state
-
Alignment
two sequences
-
Interval
ranges, not points
-
Tree
subtrees as subproblems
-
Subsets
the set is the state
the curriculum
Build intuition, then widen the problem shapes.
3–11 released as finished
00 Welcome 1 lesson Available
01 The Staircase 6 lessons Available
02 The Coin Problem 8 lessons Available
03 DP Intuition 2 lessons Coming soon
04 Linear DP 7 lessons Coming soon
05 Grid DP 5 lessons Coming soon
06 Knapsack DP 10 lessons Coming soon
07 Alignment DP 8 lessons Coming soon
08 Interval DP 8 lessons Coming soon
09 Tree DP 5 lessons Coming soon
10 Bitmask DP 6 lessons Coming soon
11 The System 8 lessons Coming soon
Define the state precisely
Know exactly what information a subproblem must remember—and what it can forget.
Derive the recurrence
Turn legal decisions into transitions instead of recalling a memorized pattern.
Defend the implementation
Explain the base cases, fill order, and memory optimization before writing the loop.
founders edition
Buy it once. Keep every module as the course grows.
Modules 0–2 unlock immediately. Modules 3–11 appear in the same library as they are finished, at no extra cost. The $99 price is limited to 100 founders. After that, the standard price is $179.
- ✓15 lessons available now
- ✓All 12 planned modules
- ✓74 planned lessons
- ✓Lifetime course access
- ✓Future module updates included
- ✓$80 below the standard price
one-time payment
Limited to 100 founders. No subscription.
30 days, full refund. Reply to your receipt and I will handle it.
your instructor
Nikola Stojiljkovic
Creator of Tech With Nikola
I built this course around the point where dynamic programming usually stops making sense: the jump from a problem statement to a state and recurrence.
The animations expose the reasoning before the code appears: what information must survive, how decisions connect subproblems, and why the implementation follows.
questions before you join
Is this a standalone course?+−
Yes. Dynamic Programming is separate from the planned Algorithms & Data Structures course.
What is available today?+−
Modules 0–2: the welcome, staircase problem, and coin problem—15 lessons in total.
What happens when new modules release?+−
They appear in the same course automatically. Your purchase includes Modules 3–11.
Do I need to memorize DP patterns?+−
No. The course teaches a derivation process first, then uses major problem families to build range.
What language is used?+−
The implementation lessons use Python so the code stays close to the underlying recurrence.
What if it does not help?+−
Request a full refund within 30 days. Reply to your Paddle receipt or email [email protected].
Stop hoping you recognise the problem.
100 founders maximum · $99 one-time · 30-day refund