题目:
题解:
一种可行的方案是从下到上,避免了从上到下的下标特判。走到每一个位置的最小值等于该位置的上两个位置中的最小值加上该位置的值。
int minimumTotal(vector<vector<int>>& triangle) {
int dp[205][205]={0};
for(int i=triangle.size()-1;i>=0;i--){
for(int j=0;j<=i;j++){
dp[i][j]=min(dp[i+1][j],dp[i+1][j+1])+triangle[i][j];
}
}
return dp[0][0];
}