首页 > 代码库 > 【Leetcode】120.Triangle

【Leetcode】120.Triangle

[Question]

 

Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below.

For example, given the following triangle

[     [2],    [3,4],   [6,5,7],  [4,1,8,3]]

The minimum path sum from top to bottom is 11 (i.e., 2 + 3 + 5 + 1 = 11).

 

[Solution]

//C++class Solution {public:    int minimumTotal(vector& triangle) {        if(triangle.size()==0)            return 0;        if(triangle.size()==1)            return(triangle[0][0]);        for(int i=triangle.size()-2; i>=0; i--){            for(int j=0; j<=i; j++){                triangle[i][j] += min(triangle[i+1][j], triangle[i+1][j+1]);            }        }        return triangle[0][0];    }};               

 

【Leetcode】120.Triangle