美文网首页
unique-paths-ii

unique-paths-ii

作者: DaiMorph | 来源:发表于2019-07-15 22:22 被阅读0次
class Solution {
public:
    int uniquePathsWithObstacles(vector<vector<int> > &a) {
        int row=a.size(),col=a[0].size();
        vector<vector<int>>dp(row,vector<int>(col,0));
        for(int i=0;i<row;i++)
        {
            if(a[i][0]!=1)dp[i][0]=1;
            else break;
        }
        for(int j=0;j<col;j++)
        {
            if(a[0][j]!=1)dp[0][j]=1;
            else break;
        }
        for(int i=1;i<row;i++)
        {
            for(int j=1;j<col;j++)
            {
                if(a[i][j]==1)dp[i][j]=0;
                else dp[i][j]=dp[i-1][j]+dp[i][j-1];
            }
        }
        return dp[row-1][col-1];
    }
};

class Solution {
public:
    int uniquePathsWithObstacles(vector<vector<int> > &a) {
        if(a.size()==0)return 0;
        int row=a.size(),col=a[0].size();
        if(a[0][0]==1||a[row-1][col-1]==1)return 0;
        vector<int>dp(col,0);
        dp[0]=1;
        for(int i=0;i<row;i++)
        {
            for(int j=0;j<col;j++)
            {
                if(a[i][j]==1)dp[j]=0;  //这里要分开写,为1的时候此处不同,要更新
                else if(j)dp[j]=dp[j]+dp[j-1];
            }
        }
        return dp[col-1];
    }
};

相关文章

网友评论

      本文标题:unique-paths-ii

      本文链接:https://www.haomeiwen.com/subject/trzokctx.html