Source Map — 12 Dynamic Programming¶
এই folder-এ ব্যবহৃত প্রতিটা বাইরের concept, problem আর reference — কোথা থেকে এসেছে আর copying status কী, সব এখানে। সব explanation এই repo-র জন্য scratch থেকে লেখা; link-গুলো attribution আর গভীরে পড়ার জন্য দেওয়া।
| Concept / Problem | Source Type | Source Name | Link | How it is used | Copying status |
|---|---|---|---|---|---|
| Dynamic programming (general concept) | Encyclopedia | Wikipedia — Dynamic programming | https://en.wikipedia.org/wiki/Dynamic_programming | Background আর terminology check; আমাদের explanation original | original explanation |
| Memoization concept | Encyclopedia | Wikipedia — Memoization | https://en.wikipedia.org/wiki/Memoization | Background পড়াশোনা | official link only |
| Contest-oriented DP study path | Learning guide | USACO Guide — Intro to DP | https://usaco.guide/gold/intro-dp | আরও পড়ার recommendation; pattern-family framing | official link only |
| Climbing Stairs | Online judge | LeetCode 70 | https://leetcode.com/problems/climbing-stairs/ | 5-step walkthrough + practice + implementation.py; task নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| House Robber | Online judge | LeetCode 198 | https://leetcode.com/problems/house-robber/ | 5-step walkthrough + practice + implementation.py; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Coin Change | Online judge | LeetCode 322 | https://leetcode.com/problems/coin-change/ | 5-step walkthrough, table frame, implementation.py; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Unique Paths | Online judge | LeetCode 62 | https://leetcode.com/problems/unique-paths/ | Grid-paths walkthrough + practice; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Longest Increasing Subsequence | Online judge | LeetCode 300 | https://leetcode.com/problems/longest-increasing-subsequence/ | 5-step walkthrough (state-anchor-এর শিক্ষাটা) + implementation.py; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Longest Common Subsequence | Online judge | LeetCode 1143 | https://leetcode.com/problems/longest-common-subsequence/ | String-DP family-র example; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Edit Distance | Online judge | LeetCode 72 | https://leetcode.com/problems/edit-distance/ | ছোট table-সহ sketch-level 5-step walkthrough; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Partition Equal Subset Sum | Online judge | LeetCode 416 | https://leetcode.com/problems/partition-equal-subset-sum/ | Subset-sum family-র example; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Word Break | Online judge | LeetCode 139 | https://leetcode.com/problems/word-break/ | Prefix-DP example; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Maximum Subarray (Kadane) | Online judge | LeetCode 53 | https://leetcode.com/problems/maximum-subarray/ | ছদ্মবেশী 1D DP হিসেবে দেখানো; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Min Cost Climbing Stairs | Online judge | LeetCode 746 | https://leetcode.com/problems/min-cost-climbing-stairs/ | Easy practice; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Fibonacci Number | Online judge | LeetCode 509 | https://leetcode.com/problems/fibonacci-number/ | Memoization-এর hello-world practice | official link only |
| Minimum Path Sum | Online judge | LeetCode 64 | https://leetcode.com/problems/minimum-path-sum/ | Grid-DP family-র example | official link only |
| Burst Balloons | Online judge | LeetCode 312 | https://leetcode.com/problems/burst-balloons/ | Interval-DP teaser example; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Regular Expression Matching | Online judge | LeetCode 10 | https://leetcode.com/problems/regular-expression-matching/ | Hard string-DP practice | official link only |
| Dice Combinations | Online judge | CSES 1633 | https://cses.fi/problemset/task/1633 | 1D counting practice; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Minimizing Coins | Online judge | CSES 1634 | https://cses.fi/problemset/task/1634 | Unbounded-knapsack practice; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Coin Combinations I | Online judge | CSES 1635 | https://cses.fi/problemset/task/1635 | Counting-ways practice; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Grid Paths (DP) | Online judge | CSES 1638 | https://cses.fi/problemset/task/1638 | Obstacle-grid practice + implementation.py-র blocked-cell flavor; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Book Shop | Online judge | CSES 1158 | https://cses.fi/problemset/task/1158 | 0/1-knapsack practice; নিজেদের ভাষায় বর্ণনা করা | rewritten problem |
| Open DP practice pool | Online judge | Codeforces problem set | https://codeforces.com/problemset/ | চোখ-বুজে pattern-recognition practice | official link only |
| Recursion prerequisite | This repo | 06 — Recursion and Backtracking | ../06-recursion-and-backtracking/ | Cross-reference: DP = recursion + একটা খাতা | original explanation |
| Topological order for DP on DAG | This repo | 09 — Graphs, topological sort | ../09-graphs/topological-sort.md | patterns.md-তে cross-reference | original explanation |
| Bit tricks for bitmask DP | This repo | Math fundamentals levels 4 and 11 | ../01-math-based-programming-fundamentals/ | patterns.md-তে cross-reference | original explanation |
| All call trees, table frames, examples, and Python code | This repo | Original teaching material | — | এই folder-এর জন্য বানানো; assert verified | original explanation |