Skip to content

Commit d5f89bd

Browse files
Create 64-Minimum-Path-Sum.cpp
1 parent 0fdb30e commit d5f89bd

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

cpp/64-Minimum-Path-Sum.cpp

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
class Solution{
2+
public:
3+
void Helper(vector<vector<int>> & grid, vector<vector<int>> & dp, int i, int k){
4+
int X = grid.size();
5+
int Y = grid[0].size();
6+
for(int i = 0; i < X; i++){
7+
for(k = 0; k < Y; k++){
8+
if((i - 1 >= 0) && (k - 1 >= 0)){
9+
dp[i][k] = grid[i][k] + min(dp[i - 1][k], dp[i][k - 1]);
10+
}
11+
else{
12+
if(i - 1 >= 0){
13+
dp[i][k] = grid[i][k] + dp[i - 1][k];
14+
}
15+
if(k - 1 >= 0){
16+
dp[i][k] = grid[i][k] + dp[i][k - 1];
17+
}
18+
}
19+
}
20+
}
21+
22+
}
23+
int minPathSum(vector<vector<int>>& grid){
24+
vector<vector<int>> dp(grid.size(), vector<int>(grid[0].size()));
25+
dp[0][0] = grid[0][0];
26+
Helper(grid, dp, grid.size() - 1, grid[0].size() - 1);
27+
return dp[grid.size() - 1][grid[0].size() - 1];
28+
}
29+
};

0 commit comments

Comments
 (0)