美文网首页
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