DP -> Divide and Conquer DP
Monotone-opt partition DP where one row cur[i] = min(prev[k] + cost(k+1, i)) is computed by recursive split-range shrinking.
- Topic slug:
dp/divide-and-conquer-dp
- Tutorial page: Open tutorial
- Ladder page: Open ladder
- Repo problems currently tagged here:
1
- Repo companion pages:
5
- Curated external problems:
2
Microtopics
- partition-dp
- monotone-argmin
- row-optimization
- interval-cost-precompute
- opt-range-shrink
- divide-and-conquer-row
Learning Sources
Practice Sources
Repo Companion Material
Curated External Problems
Core
| Problem |
Source |
Difficulty |
Context |
Style |
Prerequisites |
Tags |
Why it fits |
| Ciel and Gondolas |
Codeforces |
Very Hard |
Partition DP |
Partition DP; Cost Preprocessing; Decision Monotonicity |
Prefix Sums; Monotone Argmins |
Monotone Opt; 2D Prefix Sums; Contiguous Groups |
The canonical first benchmark where interval-cost preprocessing and monotone split decisions combine into one exact divide-and-conquer DP row optimization. |
Stretch
| Problem |
Source |
Difficulty |
Context |
Style |
Prerequisites |
Tags |
Why it fits |
| Yet Another Minimization Problem |
Codeforces |
Very Hard |
Partition DP |
Partition DP; Cost Maintenance; Decision Monotonicity |
Divide And Conquer DP; Incremental Cost Updates; Two Pointers Or Mo Intuition |
Monotone Opt; Mo-Style Cost Maintenance; Distinct Pair Cost |
A strong follow-up where the row optimization stays the same but the real challenge becomes maintaining the interval cost fast enough. |
Repo Problems
| Code |
Title |
Fit |
Difficulty |
Pattern |
Note |
Solution |
CIELANDGONDOLAS |
Ciel and Gondolas |
primary |
very hard |
- |
Note |
Code |
Regeneration
python3 scripts/generate_problem_catalog.py