zoukankan      html  css  js  c++  java
  • leetcode-unique paths 2

    The feeling of depending on oneself and AC is just great.

     1 #include <iostream>
     2 #include <vector>
     3 using namespace std;
     4 class Solution {
     5 public:
     6     int uniquePathsWithObstacles(vector<vector<int> > &obstacleGrid) {
     7         vector<vector<int>> d(obstacleGrid.size(), vector<int>(obstacleGrid[0].size(), 0));
     8         for (int i = 0; i < d.size(); i++)
     9         {
    10             if (obstacleGrid[i][0] != 1)
    11                 d[i][0] = 1;
    12             else break;
    13         }
    14         for (int i = 0; i < d[0].size(); i++)
    15         {
    16             if (obstacleGrid[0][i] != 1)
    17                 d[0][i] = 1;
    18             else break;
    19         }
    20         for (int i = 1; i < obstacleGrid.size(); i++)
    21         {
    22             for (int j = 1; j < obstacleGrid[i].size(); j++)
    23             {
    24                 if (obstacleGrid[i][j] != 1)///////////////////////////////////////
    25                 {
    26                     d[i][j] = d[i - 1][j] + d[i][j - 1];
    27                 }
    28                 //cout << d[i][j] << " ";
    29             }
    30             //cout << endl;
    31         }
    32         return d[obstacleGrid.size()-1][obstacleGrid[0].size()-1];
    33     }
    34 };
    35 int main()
    36 {
    37     Solution s;
    38     vector<vector<int>> obstacleGrid;
    39     int a0[] = { 0, 0, 0 };
    40     int a1[] = { 0, 1, 0 };
    41     int a2[] = { 0, 0, 0 };
    42     obstacleGrid.push_back(vector<int>(a0, a0 + 3));
    43     obstacleGrid.push_back(vector<int>(a1, a1 + 3));
    44     obstacleGrid.push_back(vector<int>(a2, a2 + 3));
    45 
    46     //print vector<vector<int>>
    47     //for (int i = 0; i < obstacleGrid.size(); i++)
    48     //{
    49     //    for (int j = 0; j < obstacleGrid[i].size(); j++)
    50     //    {
    51     //        cout << obstacleGrid[i][j]<<" ";
    52     //    }
    53     //    cout << endl;
    54     //}
    55     cout << s.uniquePathsWithObstacles(obstacleGrid) << endl;
    56     return 0;
    57 }
  • 相关阅读:
    Linux配置java环境
    三级联动的实现
    Linux安装
    省市区县的sql语句——城市
    shiro登陆权限验证
    省市区县的sql语句——区县
    Linux安装Jenkins
    省市区县的sql语句——省
    读《世界是数字的》有感
    读《我是一只IT小小鸟》有感
  • 原文地址:https://www.cnblogs.com/forcheryl/p/4001472.html
Copyright © 2011-2022 走看看