zoukankan      html  css  js  c++  java
  • [leetcode]triangle

    简单题,一般的dp入门题。

    只是要求O(n)的空间,目测是想要求数组迭代吧。

    但是从上往下推就不用额外空间了

    PS。写了if没写else都是sb,害得我看这个简单代码调试了10分钟

    class Solution {
    public:
        int minimumTotal(vector<vector<int> > &triangle) {
            // Start typing your C/C++ solution below
            // DO NOT write int main() function
            for(int i = 1 ; i < triangle.size() ; i++){
                    for(int j = 0 ; j < triangle[i].size() - 1; j++){
                        if(j == 0) triangle[i][j] += triangle[i-1][j];
                        else triangle[i][j] += min(triangle[i-1][j],triangle[i-1][j-1]); //就这里sb的没写else
                    }
                    triangle[i][triangle[i].size() - 1] += triangle[i-1][triangle[i].size() - 2];           
            }
            int ans = 0x7FFFFF;
            int len = triangle.size();
            for(int i = 0 ; i < triangle[len-1].size() ; i++ ){
           //     cout << "i = " << i<< " "<<triangle[len-1][i] <<endl;
                ans = min(ans , triangle[len-1][i]);
            }
            return ans;
        }
    };
  • 相关阅读:
    checkbox radio select 选中总结
    vue-cli3总结
    数组总结
    Object 总结
    ajax总结
    canvas
    移动端事件
    微服务架构 SpringBoot(一)
    spring+activemq实战之配置监听多队列实现不同队列消息消费
    Integer 数值比较
  • 原文地址:https://www.cnblogs.com/x1957/p/3280675.html
Copyright © 2011-2022 走看看