当前位置: 首页 > news >正文

算法练习--动态规划 相关

文章目录

  • 走方格的方案

走方格的方案

请计算n*m的棋盘格子(n为横向的格子数,m为竖向的格子数)从棋盘左上角出发沿着边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。

注:沿棋盘格之间的边缘线行走

输入描述:
输入两个正整数n和m,用空格隔开。(1≤n,m≤8)

输出描述:
输出一行结果

示例1
输入:
2 2
输出:
6

python实现:

  • 递归
  • 第一步向右 的方法数 + 第一步向下的方法数
  • 类似爬楼梯
def func(n, m):if n < 0 or m < 0:return 0 # 没法走elif n == 0 or m == 0:return 1return func(n-1, m) + func(n, m-1)def walk():n, m = input().strip().split()n = int(n)m = int(m)return func(n, m)print(walk())
  • 阶乘
import math
def walk():row, col = map(int, input().split())total_step = col + rowres = math.factorial(total_step) / (math.factorial(col) * math.factorial(row))print(int(res))walk()
  • 动态规划
  • 构造二维数组
  • 每个点的方法数= 上面点 + 左边点 方法数之和
def walk():n,m = map(int, input().split(' '))dp = [[1 for i in range(n+1)] for j in range(m+1)]for i in range(1,m+1):for j in range(1,n+1):dp[i][j] = dp[i-1][j]+dp[i][j-1]print(dp[m][n])walk()
http://www.lryc.cn/news/118123.html

相关文章:

  • JAVA volatile 关键字
  • [Leetcode] [Tutorial] 回溯
  • STM32 CubeMX USB_MSC(存储设备U盘)
  • 湘大 XTU OJ 1214 A+B IV 题解:数位移动的本质+布尔变量标记+朴素模拟
  • 以商业大数据技术助力数据合规流通体系建立,合合信息参编《数据经纪从业人员评价规范》团标
  • 【论文阅读】Deep Instance Segmentation With Automotive Radar Detection Points
  • 易服客工作室:如何创建有用的内容日历
  • Excel革命,基于电子表格开发的新工具,不是Access和Power Fx
  • “崩溃”漏洞会影响英特尔 CPU 的使用寿命,可能会泄露加密密钥等
  • 17.电话号码的字母组合(回溯)
  • Redis小例子
  • ETLCloud+MaxCompute实现云数据仓库的高效实时同步
  • HTTP代理授权方式介绍
  • 《合成孔径雷达成像算法与实现》Figure3.4
  • qt5.15.2 使用mysql8.1
  • 广州华锐互动:VR3D课程在线教育平台为职业院校提供沉浸式的虚拟现实学习体验
  • clion run qt 问题汇总
  • 深入理解spring面经
  • 2023年,App运行小游戏,可以玩出什么创意?
  • 景嘉微电子2021笔试题
  • selenium官网文档阅读总结(day 4)
  • 15.4 【Linux】可唤醒停机期间的工作任务
  • [FPGA开发]解决正点原子Xilinx下载器无法下载、灯不亮的问题
  • DP(区间DP)
  • MySQL5.7保姆级安装教程
  • Linux:getopts解析命令行选项和参数
  • c语言——三子棋
  • Android 广播阻塞、延迟问题分析方法
  • HTML JS 解析器出sql 中 的所有表名称,支持多条SQL
  • 【雕爷学编程】Arduino动手做(05)---热敏电阻模块之的基本参数、模块特色、电原理与使用说明