首页 > 编程语言 >39天【代码随想录算法训练营34期】第九章 动态规划part02(● 62.不同路径 ● 63. 不同路径 II )

39天【代码随想录算法训练营34期】第九章 动态规划part02(● 62.不同路径 ● 63. 不同路径 II )

时间:2024-04-29 12:33:25浏览次数:28  
标签:39 obstacleGrid int 路径 随想录 range table dp

62.不同路径

class Solution:
    def uniquePaths(self, m: int, n: int) -> int:
        table = [[0]*n]*m

        for x in range(n):
            table[0][x] = 1
        for y in range(m):
            table[y][0] = 1
        
        for y in range(1, m):
            for x in range(1, n):
                table[y][x] = table[y-1][x] + table[y][x-1]

        return table[-1][-1]

63. 不同路径 II

class Solution:
    def uniquePathsWithObstacles(self, obstacleGrid: List[List[int]]) -> int:
        m = len(obstacleGrid)
        n = len(obstacleGrid[0])

        if obstacleGrid[m - 1][n - 1] == 1 or obstacleGrid[0][0] == 1:
            return 0

        dp = [[0] * n for _ in range(m)]

        for i in range(m):
            if obstacleGrid[i][0] == 0:
                dp[i][0] = 1
            else:
                break
        for j in range(n):
            if obstacleGrid[0][j] == 0:
                dp[0][j] = 1
            else:
                break

        for i in range(1, m):
            for j in range(1, n):
                if obstacleGrid[i][j] == 1:
                    continue
                else:
                    dp[i][j] = dp[i-1][j] + dp[i][j-1]
    
        return dp[m-1][n-1]

标签:39,obstacleGrid,int,路径,随想录,range,table,dp
From: https://www.cnblogs.com/miramira/p/18165415

相关文章

  • 为什么有值依然报async-validator ['xxx is required']
    问题描述:点击确定时,前端控制台打印如下: 但是实际上startStationName和endStationName均有值,如下所示:代码:<el-dialog:title="textMap[dialogStatus]":visible.sync="dialogFormVisible"width="980px"@close="closeDialog"><el-form:......
  • linux4-绝对路径&相对路径
    linux4-绝对路径&相对路径.表示当前目录,cd./Desktop表示切换目录至当前目录下的Desktop目录内,效果等同于cdDesktop..表示上一级目录,cd..表示切换到上一级目录,cd../..表示切换到上二级目录,cd../../..表示切换到上三级目录~表示home目录,cd~表示......
  • 查找datafocus安装路径
    1.cat/etc/profile|grepDATA   2.解读下面一行master-192-168-0-15:/df-share表示该文件系统是通过网络文件系统(NFS)挂载的,其位置为master-192-168-0-15主机上的/df-share目录实际上,在主机上并没有名为/df-share的目录,这是一个挂载点的名称,而不是实际的目......
  • vue3项目打包的时候报错'openBlock' is not exported by node_modules/...
    用了一个手写签名的,开发环境中一切正常,但是在打包发布的时候,就报错了。'openBlock'isnotexportedbynode_modules/vue-esign/node_modules/vue/dist/vue.runtime.esm.js.... 这个应该是vue版本重复导致的。 解决:在vite.config.ts中加入 dedupe:['vue'],  dedupe是......
  • 38天【代码随想录算法训练营34期】第九章 动态规划part01 (● 理论基础 ● 509. 斐波
    理论基础斐波那契数classSolution:deffib(self,n:int)->int:ifn==0:return0ifn==1:return1returnself.fib(n-1)+self.fib(n-2)爬楼梯classSolution:defclimbStairs(self,n:int)->i......
  • 39、BlackRose(VulnHub)
    BlackRose一、nmap二、web渗透随便看看注册进去账号:xxxxxx密码:xxxxxx目录爆破有很多特殊的目录,不过访问后都重定向了burpsuite改包进admin查看xxxxxx用户数据包抓一些xxxxxx用户的一些记录包,看看有什么可用的signature=&command=id&indexcsrf=3cb58993bfd71f......
  • Quick Go To Selected File Path - 快速路径跳转 - vscode 插件推荐
    QuickGoToSelectedFilePath-快速路径跳转-vscode插件推荐差个插件的快捷键是Ctrl+E一直找一个鼠标点就过去的,一直没找到比较通用的,这个算是比较不错的~QuickGoToSelectedFilePathhttps://marketplace.visualstudio.com/items?itemName=duXing.quick-go-to-s......
  • idea启动项目时抛出错误信息Error running 'XXXApplication' Error running XXXApplic
    很多新手小白在启动项目时会出现下面问题,不知道怎么办出现的问题:启动项目时抛出下图错误提示:Errorrunning'XXXApplication'ErrorrunningXXXApplication.Commandlineistoolong.Shortenthecommandlineandrerun. 解决办法:1、直接点击下图位置,进入EditRunConfi......
  • [Err]1114 The table 'xxx' is full 的解决办法
    错误信息[ERR]1114-Thetable'th_exam_paper'isfull解决步骤查看服务器硬盘使用情况df-h数据库所在位置空间已经百分之一百,准备迁移数据库文件迁移mysql数据库文件到挂载盘要将MySQL数据库文件迁移到其他挂载盘,你需要做的是将数据文件复制到新位置,并更新MyS......
  • Bluestein's Algorithm
    Bluestein'sAlgorithm用于当不是\(2\)的整数次幂时对多项式的(I)DFT。考虑现在要求:\[f_m=\sum\limits_{k=0}^{n-1}a_kw^{mk}\]Bluestein的核心思想在于拆\(mk\)。不难证明\(mk=\frac{m(m-1)}{2}+\frac{k(k+1)}{2}-\frac{(m-k)(m-k-1)}{2}\)。......