Divide and conquer is a recursive problem-solving approach that breaks a problem into smaller, more manageable subproblems, solves them individually, and then combines their solutions to solve the original problem.
Dynamic programming is an algorithmic technique that efficiently solves problems by breaking them down into smaller overlapping subproblems and storing the solutions to these subproblems to avoid redundant computations.
Given a m*n grid with each cell consisting of positive, negative, or zero point. We can move across a cell only if we have positive points. Whenever we pass through a cell, points in that cell are added to our overall points, the task is to find minimum initial points to reach cell (m-1, n-1) from (0, 0) by following these certain set of rules.