Palindrome Partitioning Minimum Cuts
Given a string, return the minimum number of cuts needed such that every substring in the partition is a palindrome.
Egg Drop Puzzle
Given k eggs and n floors, compute the minimum number of attempts required in the worst case to find the highest safe floor.
Create Maximum Number
Given two arrays of digits and an integer k, merge them to form the largest number of length k.
Cherry Pickup Maximum
Given a grid with cherries, find the maximum cherries you can collect using two paths from top-left to bottom-right.
Split Array Largest Sum
Minimize the largest sum among k contiguous subarrays using dynamic programming.
Showing 1–5 of 5 challenges · hard · Dynamic Programming
Dynamic Programming — Python coding challenges
What you will find here
This page lists dynamic programming challenges — real Python problems you solve in the browser IDE with instant test feedback. Each challenge includes a clear brief, starter code, and automated checks.
Challenges vs tutorials and quizzes
Challenges test what you can build under constraints. For guided teaching, use our Python tutorials. For quick checks, try quizzes or copy snippets from code samples.