思路:
Dp,倒着递推不需要考虑边界问题。
代码:
class Solution {
public:
int minimumTotal(vector<vector<int>>& triangle) {
int n =triangle.size();
vector<vector<int>> f(n+1,vector<int> (n+1));
for(int i=n-1;i>=0;i--){
for(int j=0;j<=i;j++){
f[i][j] = triangle[i][j] + min(f[i+1][j],f[i+1][j+1]);
}
}
return f[0][0];
}
};
评论区