LeetCode每日一题 | 931. 下降路径最小和

题目链接:

931. 下降路径最小和 - 力扣(LeetCode)

题目描述:

LeetCode每日一题 | 931. 下降路径最小和_第1张图片

思路解析:

LeetCode每日一题 | 931. 下降路径最小和_第2张图片

LeetCode每日一题 | 931. 下降路径最小和_第3张图片

LeetCode每日一题 | 931. 下降路径最小和_第4张图片

LeetCode每日一题 | 931. 下降路径最小和_第5张图片

LeetCode每日一题 | 931. 下降路径最小和_第6张图片

LeetCode每日一题 | 931. 下降路径最小和_第7张图片

LeetCode每日一题 | 931. 下降路径最小和_第8张图片

LeetCode每日一题 | 931. 下降路径最小和_第9张图片

LeetCode每日一题 | 931. 下降路径最小和_第10张图片

LeetCode每日一题 | 931. 下降路径最小和_第11张图片

LeetCode每日一题 | 931. 下降路径最小和_第12张图片

解题代码:

class Solution {
public:
    int minFallingPathSum(vector>& matrix) 
    {
        int m = matrix.size();

        vector> dp(m+1,vector(m+2));
        for(int i = 0; i < m+2 ; ++i )
        {
            dp[0][i] = 0;
        }
        for(int i = 1;i < m+1 ; ++i)
        {
            dp[i][0] = INT_MAX;
        } 
        for(int i = 1;i < m+1 ; ++i)
        {
            dp[i][m+1] = INT_MAX;
        } 

        for(int i = 1 ; i < m+1 ; ++i)
        {
            for(int j = 1; j < m+1 ;++j)
            {
                dp[i][j]=min(dp[i-1][j-1],min(dp[i-1][j+1],dp[i-1][j]))+matrix[i-1][j-1];
            }
        }
        int ret=INT_MAX;
        for(int i = 1;i

你可能感兴趣的:(LeetCode每日一题,leetcode,算法,职场和发展)