leetcode——64. 最小路徑和

int minPathSum(int** grid, int gridSize, int* gridColSize){
    int m = gridSize;
    int n = *gridColSize;
    
    int dp[m][n];
   
    int i,j;
    dp[0][0] = grid[0][0];
    
    for( i = 1; i <n; i++){
        dp[0][i] = dp[0][i-1] + grid[0][i]; 
    }
    
    for( i = 1; i <m; i++){
        dp[i][0] = dp[i-1][0] + grid[i][0]; 
    }
    
    for( i = 1; i < m; i++){
        for( j = 1; j < n; j++){
            dp[i][j] = dp[i-1][j] < dp[i][j-1]? dp[i-1][j] + grid[i][j]: dp[i][j-1]+grid[i][j];
        }
        
    }
    
    return dp[m-1][n-1];
    
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章