码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode. Triangle

时间:2014-12-16 19:07:17      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:style   blog   ar   color   sp   for   on   div   log   

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).

Note:
Bonus point if you are able to do this using only O(n) extra space, where n is the total number of rows in the triangle.

下一层的值

minPath[i][j] += min(minPath[i - 1][j - 1], minPath[i - 1][j]);

 1 int minimumTotal(vector<vector<int> > &triangle) 
 2     {
 3         vector<vector<int> > minPath(triangle);
 4         int min_path = INT_MAX, i, j;
 5         
 6         for (i = 1; i < triangle.size(); i++)
 7         {
 8             for (j = 0; j <= i; j++)
 9             {
10                 if (j == 0)
11                     minPath[i][j] += minPath[i - 1][j];
12                 else if (j == i)
13                     minPath[i][j] += minPath[i - 1][j - 1];
14                 else 
15                     minPath[i][j] += min(minPath[i - 1][j - 1], minPath[i - 1][j]);
16             }
17         }
18         
19         for (j = 0; j < i; j++)
20             min_path = min(min_path, minPath[i - 1][j]);
21             
22         return min_path;
23     }

 

leetcode. Triangle

标签:style   blog   ar   color   sp   for   on   div   log   

原文地址:http://www.cnblogs.com/ym65536/p/4167668.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!