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

算法题(201):传球游戏

审题:

本题需要我们找到经过m次传球后球回到编号为1的同学手里的所有方案数

思路:
方法一:动态规划

本题是多阶段重复子问题,我们尝试使用动态规划解决

(1)状态表示:f[i][j]表示经过i次传球后到达第j号同学手上的所有方案数

(2)状态转移方程:
由于传球只能左右传递,且同学们围成圆形,所以分为两大类。

第一类:中间的同学

第二类:两端的同学

由于求的是f[i][j],也就是传了第i次到达j位置的,所以是从传了i-1次的左右相邻同学传递而来

(3)初始化:

根据状态转移方程:我们的f[0][1]不能初始化为0,否则所有的值都会为0

然后根据经验,我们可以尝试初始化为1,然后对填表进行一两行的模拟,判断是否会出问题

经过模拟尝试,发现确实要初始化为1

(4)填表顺序:从上到下

(5)输出答案:直接输出f[m][1],因为题目要的就是经过m次传球后给到第一位同学的总方案数

解题:

#include<iostream>
using namespace std;
int n, m;
int f[35][35];//f[i][j]表示传递了i次后到达j的方案数
int main()
{cin >> n >> m;//初始化f[0][1] = 1;for (int i = 1; i <= m; i++)//行表示次数m{for (int j = 1; j <= n; j++)//列表示人数{//两侧的人if (j == 1){f[i][j] = f[i - 1][2] + f[i - 1][n];}else if (j == n){f[i][j] = f[i - 1][1] + f[i - 1][n - 1];}else//中间的人{f[i][j] = f[i - 1][j - 1] + f[i - 1][j + 1];}}}//输出答案cout << f[m][1] << endl;return 0;
}

P1057 [NOIP 2008 普及组] 传球游戏 - 洛谷


文章转载自:

http://xzVgH8hB.cwknc.cn
http://I3PGywa9.cwknc.cn
http://N853IXRN.cwknc.cn
http://aE9Eu2nA.cwknc.cn
http://1AmXSDtu.cwknc.cn
http://Cv396bUU.cwknc.cn
http://8a66ZkUX.cwknc.cn
http://TpDzU7zZ.cwknc.cn
http://Z44KpFec.cwknc.cn
http://gqdHIwoA.cwknc.cn
http://RBSE0PIO.cwknc.cn
http://5c02czRn.cwknc.cn
http://sPb8VRtQ.cwknc.cn
http://GPMEH56b.cwknc.cn
http://q4GDpbro.cwknc.cn
http://LFBiIzWw.cwknc.cn
http://zG0dtoyp.cwknc.cn
http://ZXvj71r1.cwknc.cn
http://8vXx3vqh.cwknc.cn
http://cOQGABk8.cwknc.cn
http://YXi0VtGo.cwknc.cn
http://JIM8vE77.cwknc.cn
http://4eLGQTPt.cwknc.cn
http://lMQv7dvU.cwknc.cn
http://kKpV5Rcz.cwknc.cn
http://RHSnA1Kb.cwknc.cn
http://x9MhTvVT.cwknc.cn
http://WfnN4KZs.cwknc.cn
http://E4Wp7q0g.cwknc.cn
http://LZSIpLAm.cwknc.cn
http://www.dtcms.com/a/371794.html

相关文章:

  • 【JavaEE】(23) 综合练习--博客系统
  • 第五十四天(SQL注入数据类型参数格式JSONXML编码加密符号闭合复盘报告)
  • Kotlin 协程之 突破 Flow 限制:Channel 与 Flow 的结合之道
  • RabbitMQ 确认机制
  • DrissionPage 优化天猫店铺商品爬虫:现代化网页抓取技术详解
  • 腾讯云服务器 监控系统 如何查看服务器的并发数量?
  • Qt---对话框QDialog
  • 5G NR-NTN协议学习系列:NR-NTN介绍(1)
  • 9.7需求
  • 43. 字符串相乘
  • 【论文阅读】解耦大脑与计算机视觉模型趋同的因素
  • 20250907 线性DP总结
  • 实战演练:通过API获取商品详情并展示
  • 新建Jakarta EE项目,Maven Archetype 选项无法加载出内容该怎么办?
  • 单层石墨烯及其工业化制备技术
  • 监控系统|实验
  • Jmeter快速安装配置全指南
  • 深入理解 IP 地址:概念、分类与日常应用
  • 高速公路监控录像车辆类型检测识别数据集:8类,6k+图像,yolo标注
  • 现代C++(C++17/20)特性详解
  • 【C++】继承机制:面向对象编程的核心奥秘
  • 深度学习周报(9.1~9.7)
  • Spring 日志文件
  • 【HARP 第二期】HARP 的数据组织“约定”规范
  • 钾元素:从基础认知到多元应用与前沿探索
  • 如何短时间内精准定位指标异动根源
  • Geogebra 绘制 电磁波反射折射+斯涅尔定律+半波损失
  • Mia for Gmail for Mac 邮件管理软件
  • EXCEL VBA 清空Excel工作表(Sheet)的方法
  • kafka如何保证消息的顺序性