首页 > 其他 > 详细

Minimum Path Sum Total Accepted: 34975 Total Submissions: 109325

时间:2015-04-22 18:17:50      阅读:238      评论:0      收藏:0      [点我收藏+]

题目来自于:LeetCode

https://leetcode.com/problems/minimum-path-sum/

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.

Note: You can only move either down or right at any point in time.

Show Tags
Have you met this question in a real interview? 
int minPathSum(int **grid, int nRows, int nCols) {
    if(nRows==0)
    return 0;
    int sum=0;
    if(nRows==1)
    {
        for(int i=0;i<nCols;++i)
        sum+=grid[0][i];
        return sum;
    }
      if(nCols==1)
    {
        for(int i=0;i<nRows;++i)
        sum+=grid[i][0];
        return sum;
    }
    for(int i=nRows-2;i>=0;--i)
       grid[i][nCols-1]+=grid[i+1][nCols-1];
       for(int j=nCols-2;j>=0;--j)
        grid[nRows-1][j]+=grid[nRows-1][j+1];
    for(int i=nRows-2;i>=0;--i)
       for(int j=nCols-2;j>=0;--j)
      {
          if(grid[i+1][j]<grid[i][j+1])
            grid[i][j]+=grid[i+1][j];
            else
            grid[i][j]+=grid[i][j+1];
       }
       return grid[0][0];
}


Minimum Path Sum Total Accepted: 34975 Total Submissions: 109325

原文:http://blog.csdn.net/zhouyelihua/article/details/45196867

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!