List of DP Problems Having Short Statements (800 to 2200)
Long, wordy statements can be exhausting, especially for beginners. So here is a list of dynamic programming problems with short and easy-to-read statements, sorted by rating.
Notes: - Every problem here has a short statement (under about 1000 characters, input/output and samples not counted). - Within each rating, problems are listed in order of problem ID. - Ratings are as of April 2026 and may shift a little over time. - Short statement does not always mean an easy idea. Some of these are tricky!
800
900
1000
1100
1300
- 58B — Coins (1300)
- 189A — Cut Ribbon (1300)
- 665C — Simple Strings (1300)
- 2033D — Kousuke's Assignment (1300)
1400
- 180C — Letter (1400)
- 414B — Mashmokh and Another Problem (1400)
- 489C — Given Length and Sum of Digits... (1400)
- 538B — Quasi Binary (1400)
- 797B — Odd sum (1400)
- 1215B — The Number of Products (1400)
- 1526B — I Hate 1111 (1400)
1500
- 22B — Bargaining Table (1500)
- 166E — Tetrahedron (1500)
- 455A — Boredom (1500)
- 550C — Divisibility by Eight (1500)
- 868C — Qualification Rounds (1500)
- 982C — Cut 'em all! (1500)
- 991D — Bishwock (1500)
- 1105C — Ayoub and Lost Array (1500)
- 1272D — Remove One Element (1500)
1600
- 219C — Color Stripe (1600)
- 597B — Restaurant (1600)
- 605A — Sorting Railway Cars (1600)
- 660C — Hard Process (1600)
- 888D — Almost Identity Permutations (1600)
- 1288C — Two Arrays (1600)
- 1295C — Obtain The String (1600)
- 1373D — Maximum Sum on Even Positions (1600)
- 1395C — Boboniu and Bit Operations (1600)
- 1398C — Good Subarrays (1600)
- 1513C — Add One (1600)
- 1519D — Maximum Sum of Products (1600)
- 1633D — Make Them Equal (1600)
- 1753B — Factorial Divisibility (1600)
- 1787C — Remove the Bracket (1600)
1700
- 349B — Color the Fence (1700)
- 466C — Number of Ways (1700)
- 546D — Soldier and Number Game (1700)
- 915C — Permute Digits (1700)
- 919D — Substring (1700)
- 977F — Consecutive Subsequence (1700)
- 1061C — Multiplicity (1700)
- 1497E1 — Square-free division (easy version) (1700)
- 1681D — Required Length (1700)
- 1695C — Zero Path (1700)
- 1829H — Don't Blame Me (1700)
- 1948D — Tandem Repeats? (1700)
1800
1900
2200
If you know other DP problems with short statements, share them in the comments! Happy coding!




