Skip to content

Commit 270faa0

Browse files
committed
more clean implementation
1 parent 4b062ef commit 270faa0

File tree

1 file changed

+8
-17
lines changed

1 file changed

+8
-17
lines changed

algorithms/cpp/minimumPathSum/minimumPathSum.cpp

+8-17
Original file line numberDiff line numberDiff line change
@@ -27,27 +27,18 @@
2727
#include <vector>
2828
using namespace std;
2929

30-
int minPathSum(vector<vector<int> > &grid) {
31-
if (grid.size()<=0){
32-
return 0;
33-
}
34-
int i, j;
35-
for(i=0; i<grid.size(); i++){
36-
for(j=0; j<grid[i].size(); j++){
37-
int top = i-1<0 ? INT_MAX : grid[i-1][j] ;
38-
int left = j-1<0 ? INT_MAX : grid[i][j-1];
39-
if (top==INT_MAX && left==INT_MAX){
40-
continue;
41-
}
42-
grid[i][j] += (top < left? top: left);
43-
30+
int minPathSum(vector<vector<int>>& grid) {
31+
for (int i=0; i<grid.size(); i++) {
32+
for (int j=0; j<grid[0].size(); j++) {
33+
if (i==0 && j==0) continue;
34+
else if (i==0) grid[0][j] += grid[0][j-1];
35+
else if (j==0) grid[i][0] += grid[i-1][j];
36+
else grid[i][j] += min( grid[i-1][j], grid[i][j-1]);
4437
}
4538
}
46-
4739
return grid[grid.size()-1][grid[0].size()-1];
4840
}
4941

50-
5142
int main()
5243
{
5344
int a[6][2]={{7,2},{6,6},{8,6},{8,7},{5,0},{6,0}};
@@ -59,7 +50,7 @@ int main()
5950
}
6051
grid.push_back(v);
6152
}
62-
53+
6354
cout << "minPathSum=" << minPathSum(grid) << endl;
6455

6556
return 0;

0 commit comments

Comments
 (0)