LC120

int minimumTotal(vector<vector<int>>& triangle) {
    int n=triangle.size();
    int m=n;
    int dp[n][m];
    for(int i=0;i<n;i++){
        for(int j=0;j<i+1;j++){
            if(i==0){
                dp[i][j]=triangle[i][j];
            }else{
                if(j==0){
                    dp[i][j]=dp[i-1][j]+triangle[i][j];
                }else if(j==i){
                    dp[i][j]=dp[i-1][j-1]+triangle[i][j];
                }else{
                    
                    dp[i][j]=min(dp[i-1][j],dp[i-1][j-1])+triangle[i][j];
                }
            }
          //  cout<<dp[i][j]<<" ";
        }
       // cout<<endl;
        
    }
    int ans=10005;
    for(int i=0;i<n;i++){
        ans=min(ans,dp[n-1][i]);
    }
    return ans;
}
posted @   lwx_R  阅读(121)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示