蓝桥杯算法训练VIP-传球游戏

2023-11-18

题目

题目链接

题解

动态规划。


这个题不能用DFS,用DFS的小朋友趁早放弃,输入数据为30 30时,输出为155117522,这就意味着要是dfs的话,需要搜到底155117522次,光遍历这么多次都会超时更别说深搜了,所以只能动归。


也算比较经典的dp之一了。
dp[i][j]表示经过j次传球,球最后回到第i个人手中的方案数;
转移方程:dp[i][j] = dp[i-1][j-1] + dp[i+1][j-1]
含义为:第j次传球要么是第i个人的左手边的人传过来的,要么是右手边,对应着i+1i-1
我们应当注意取模,即最终转移方程为dp[i][j] = dp[(i+n-1)%n][j-1] + dp[(i+1)%n][j-1]
初始化为dp[0][0] = 1, 表示0号传0次球回到0号手里的方案数,这里的0号对应题目中的第一个小朋友。


因为我定义的dp数组的第一维表示小朋友,第二维表示传球次数,因此外层循环为第二维,内层为第一维。其实我们也可以根据递推方程得知要先循环第二维,因为没计算出i+1的信息就没法得到第i个的信息,显然不能先循环第一维吧。

代码

#include<bits/stdc++.h>
using namespace std;
int n, m, dp[50][50];

int main()
{
	cin>>n>>m;
	
	dp[0][0] = 1; // 0号传0次球回到0号手里的方案数 
	for(int j = 1;j <= m;j ++)
	for(int i = 0;i < n;i ++)
	dp[i][j] = dp[(i+n-1)%n][j-1] + dp[(i+1)%n][j-1];	

	cout << dp[0][m] << endl;
	return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

蓝桥杯算法训练VIP-传球游戏 的相关文章

  • 三句话,我让R语言自动升级了

    R语言是为数学研究工作者设计的一种数学编程语言 主要用于统计分析 绘图 数据挖掘 跟所有计算机语言一样 R语言也面临升级的问题 本文讲述了最快捷的升级R语言办法 不用重新安装之前的安装包 首先 进入R交互模式 然后三条命令搞定 instal
  • 抖音小程序开发教学系列(5)- 抖音小程序数据交互

    第五章 抖音小程序数据交互 5 1 抖音小程序的网络请求 5 1 1 抖音小程序的网络请求方式和API介绍 5 1 2 抖音小程序的数据请求示例和错误处理方法 5 2 抖音小程序的数据缓存和本地存储 5 2 1 抖音小程序的数据缓存机制和使

随机推荐

  • 交流电机绕组的分相

    交流电机绕组的分相 考虑到目前大多数伺服电机厂商已经逐渐使用集中式绕组进行制造 本文将以集中式绕组12槽10极电机为例简要介绍交流电机绕组的分相方法 即60 相带槽电势星形图方法1 槽电势星形图 当电机被带动旋转时 对于集中式绕组而言 每一
  • 穿越火线河北一区服务器位置,【 C F 史上最全的各大区“兵服”地址!】...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 电 信 区 四川二区 团队1 频道2 浙江二区 团队2 频道2 江西一区 团队1 频道2 高手1 频道10 广西一区 高手1 频道7 爆满 上海一区 爆破1 频道8 9 10 11 爆满 南方大
  • [LeetCode]大于给定和最短子数组

    对于数组的操作 在算法实现中 可以考虑三种思想 阵地攻守 例题https blog csdn net fmuma article details 79858876 指针碰撞 例题https blog csdn net fmuma artic
  • AD 常见绿色报错的消除

    TM 可以复位绿色错误 在这个里面 关闭所有报错 只打开电器里面的所有报错 23 PCB板框的评估及叠层设置 对PCB板框进行评估 1 全选器件 2 如果设置了快捷键但是没有起作用 右键单击上方菜单栏 如上图所示 然后找到更改的快捷键 删除
  • UE4 关于使用Webbrowser插件遇到的问题以及解决办法

    1 无法播放网页视频 这是因为UE4的WebBrowser自带的cef3为3071版本 默认不支持h364等直播流 导致web里的直播流无法播放 解决办法 第一种办法 重新编译了cef源码 改成支持H 264 然后在UE4安装目录下替换相关
  • 目标检测入坑指南3:VGGNet神经网络

    学了蛮久的目标检测了 但是有好多细节总是忘或者模棱两可 感觉有必要写博客记录一下学习笔记和一些心得 既可以加深印象又可以方便他人 博客内容集成自各大学习资源 所以图片也就不加水印了 需要自取 本专栏会详细记录本人在研究目标检测过程中的所学所
  • Flutter android及ios强制竖屏/横屏

    Flutter android及ios强制竖屏 横屏 在main dart内设置即可 在main dart内设置即可 void main WidgetsFlutterBinding ensureInitialized 不加这个强制横 竖屏会
  • Java:jdk-12.0.2安装教程(很全的哦)

    Java是一门综合性的编程语言 从最初设计时就综合考虑了嵌入式系统以及企业平台的开发支持 所以在实际的Java开发过程中 其主要有3种开发方向 分别为Java SE 其最早被称为J2SE Java EE 其最早被称为J2EE Java ME
  • Web移动端-touch事件

    一 引入 在一个项目demo中 实现单指触控卡片的向任意方向的拖动效果 网上没有现成的插件 所以只好原生js来写 产品要求需要禁止掉多点触控 这个过程很让人头疼 试了很多方法 都不太实现 后来仔细研究 测试了一下移动端的三个常用事件 二 事
  • Web前端——Javascript复习(数组)

    1 数组 1 程序 数据结构 算法 一个好的数据结构 可极大提高程序的执行效率 相关的多个数据应集中存储 管理 分类和排序 2 数组概念 一组连续的变量组成的集合 批量管理多个数据 创建 2 1 var 变量名 2 2 var 变量名 值1
  • 【Github相关】在GitHub上 git clone代码失败,显示:“ithub.com port 443: 连接超时“

    有时候 使用git clone 指令下载代码时显示显示 ithub com port 443 连接超时 可以使用gitclone加速 官网URL https gitclone com 官方描述 有下面三种方式可以使用 方法一 替换URL g
  • c语言 栈头文件,C语言——栈(Stack)

    源码 方式一 头文件 ifndef STACK H define STACK H struct node typedef struct node stack 判断栈是否为空 int isEmpty stack s create stack
  • linux修改静态ip方法&&如何使用xshell连接

    ifconfig查看本地ip和网卡信息 cd到目录 etc sysconfig network scripts 想修改那块网卡就vi他 例如修改eth0 这样eth0的网卡就修改完毕 退出vi进行网络重启 service network r
  • LVGL 控件之(Arc)弧图形绘制

    一 弧形组成 弧图形由背景弧和前景弧组成 它们有各自的起始角度和结束角度 二 控件函数使用 设置背景弧度的函数 lv arc set bg angles arc start angle end angle 或者用 lv arc set bg
  • Thymeleaf表达式

    1 标准变量表达式 th text 需要在属性里面填写 例如 用户编号 span span br 用户姓名 span span br 用户年龄 span span br 2 选择变量表达式 星号表达式 不推荐 必须使用th object属性
  • Java学习笔记 --- 布尔类型

    一 布尔类型 1 布尔类型也叫boolean类型 boolean类型数据只允许取值true和false 无null public class Bool public static void main String args boolean
  • 测试触控延时的软件,重点测试:触控屏响应时间_笔记本评测-中关村在线

    重点测试 触控屏响应时间 触控型笔记本除了有一块触控屏外 传感器及控制IC部分是十分重要的 整套电路设计优劣会直接会影响到触控的响应时间 下面就来进行实际测试 为了这个环节我们特意找到了一套专业的滑轨设备 精准性是本次测试的重点指标 由于滑
  • JavaBean与XML相互转换

    一 JavaBean注解 1 XmlRootElement 类级别注解 name属性用于指定生成元素的名字 若不指定 默认使用类名小写作为元素名 XmlRootElement name mystudent XmlRootElement pu
  • Nginx的X-Accel-Redirect实现大文件下载

    一 文件下载的几种方式 1 直接给出下载地址 使用静态文件服务器nginx下载 任何人都可以下载 无法控制用户的权限 2 后端流式读取文件内容 设置header后疯狂输出 django文档中提到 可以向HttpResponse传递一个迭代器
  • 蓝桥杯算法训练VIP-传球游戏

    题目 题目链接 题解 动态规划 这个题不能用DFS 用DFS的小朋友趁早放弃 输入数据为30 30时 输出为155117522 这就意味着要是dfs的话 需要搜到底155117522次 光遍历这么多次都会超时更别说深搜了 所以只能动归 也算