Given an m x n grid filled with non-negative numbers, find a path from the top-left corner to the bottom-right corner that minimizes the sum of all numbers along its path.
You can only move either down or right at any point in time.
Example 1:
Input: grid = [[1,3,1],[1,5,1],[4,2,1]]
Output: 7
Explanation: The path 1 → 3 → 1 → 1 → 1 minimizes the sum to 7.
Example 2:
Input: grid = [[1,2,3],[4,5,6]]
Output: 12
Explanation: The path 1 → 2 → 3 → 6 minimizes the sum to 12.
Example 3:
Input: grid = [[5]]
Output: 5
Explanation: The grid has only one cell, so the minimum path sum is 5.
m == grid.lengthn == grid[i].length1 <= m, n <= 2000 <= grid[i][j] <= 200