本文共 1178 字,大约阅读时间需要 3 分钟。
class Solution {//DPpublic: int minPathSum(vector> &grid) { // Start typing your C/C++ solution below // DO NOT write int main() function int n = grid.size(); if(n == 0) return 0; int m = grid[0].size(); vector > f(n+1, vector (m+1, INT_MAX)); for (int i = 1; i <= n; ++i) { for (int j = 1; j <= m; ++j) { if(i == 1 && j == 1) f[i][j] = grid[i-1][j-1]; else f[i][j] = min(f[i-1][j], f[i][j-1])+grid[i-1][j-1]; } } return f[n][m]; }};
second time
class Solution {public: int minPathSum(vector> &grid) { // Start typing your C/C++ solution below // DO NOT write int main() function int m = grid.size(); if(m == 0) return 0; int n = grid[0].size(); vector > f(m+1, vector (n+1, INT_MAX)); for(int i = 1; i <= m; ++i) { for(int j = 1; j <= n; ++j) { if(i == 1 && j == 1) f[i][j] = grid[i-1][j-1]; else f[i][j] = min(f[i-1][j], f[i][j-1])+grid[i-1][j-1]; } } return f[m][n]; }};
转载地址:http://glxti.baihongyu.com/