64. Minimum Path Sum
Tags:
Medium
Skills:
DP
June 24, 2025
04:32 AM
No headings found
Loading content...
Related Posts
Leetcode
No headings found
Related Posts
Leetcode
Problem
Bài toán yêu cầu tìm đường đi từ góc bên trái → góc dưới bên phải của một matrix số nguyên không âm, sao cho tổng các số trên đường đi là nhỏ nhất. Bạn chỉ được phép đi sang phải hoặc xuống dưới tại mỗi bước
Approach
(i, j) , tổng nhỏ nhất để đến được ô này là giá trị của ô đó cộng với tổng nhỏ nhất của ô bên trái (i, j - 1) hoặc ô phía trên (i - 1, j) chọn giá trị nhỏ hơndp[i][j] = min(dp[i - 1][j], dp[i][j - 1] + grid[i][j]) Time and space complexity
Solution
1function minPathSum(grid: number[][]): number {
2 const rows = grid.length;
3 const cols = grid[0].length;
4 for (let i = 0; i < rows; i++) {
5 for (let j = 0; j < cols; j++) {
6 if (i === 0 && j === 0) continue
7 else if (i === 0) grid[i][j] += grid[i][j - 1];
8 else if (j === 0) grid[i][j] += grid[i - 1][j]
9 else grid[i][j] += Math.min(grid[i - 1][j], grid[i][j - 1])
10 }
11 }
12 return grid[rows - 1][cols - 1]
13};