class Solution {
public:
int minimumTotal(vector<vector<int> > &triangle) {
int m=triangle.size();
for(int i=m-2;i>=0;i--)
{//triangle[i][j表示从底边出发,到达i,j点的最短路径的长度
for(int j=0;j<=i;j++)
{
triangle[i][j]+=min(triangle[i+1][j],triangle[i+1][j+1]);
}
}
return triangle[0][0];
}
};
public:
int minimumTotal(vector<vector<int> > &triangle) {
int m=triangle.size();
for(int i=m-2;i>=0;i--)
{//triangle[i][j表示从底边出发,到达i,j点的最短路径的长度
for(int j=0;j<=i;j++)
{
triangle[i][j]+=min(triangle[i+1][j],triangle[i+1][j+1]);
}
}
return triangle[0][0];
}
};