P1057 传球游戏
题目描述
上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。
游戏规则是这样的: nnn 个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师再次吹哨子时,传球停止,此时,拿着球没有传出去的那个同学就是败者,要给大家表演一个节目。
聪明的小蛮提出一个有趣的问题:有多少种不同的传球方法可以使得从小蛮手里开始传的球,传了 mmm 次以后,又回到小蛮手里。两种传球方法被视作不同的方法,当且仅当这两种方法中,接到球的同学按接球顺序组成的序列是不同的。比如有三个同学 111 号、 222 号、 333 号,并假设小蛮为 111 号,球传了 333 次回到小蛮手里的方式有 111 -> 222 -> 333 -> 111 和 111 -> 333 -> 222 -> 111 ,共 222 种。
输入输出格式
输入格式:
一行,有两个用空格隔开的整数 n,m(3≤n≤30,1≤m≤30)n,m(3 \le n \le 30,1 \le m \le 30)n,m(3≤n≤30,1≤m≤30) 。
输出格式:
111 个整数,表示符合题意的方法数。
输入输出样例
说明
40%的数据满足: 3≤n≤30,1≤m≤203 \le n \le 30,1 \le m \le 203≤n≤30,1≤m≤20
100%的数据满足: 3≤n≤30,1≤m≤303 \le n \le 30,1 \le m \le 303≤n≤30,1≤m≤30
思路:
k次传球一定是k-1次左右人的传球情况相加,注意:我们把0也作为传球的情况来理解要更加全面一些。
具体代码如下:
#include<cstdio>
#define MAXN 34
int dp[MAXN][MAXN];
int main()
{
int n, m;
scanf("%d%d", &n, &m);
dp[][] = ;
for (int i = ; i <= m; ++i)
{
dp[][i] = dp[][i - ] + dp[n][i - ];
for (int j = ; j < n; ++j)
dp[j][i] = dp[j - ][i-] + dp[j + ][i-];
dp[n][i] = dp[][i - ] + dp[n - ][i - ];
}
printf("%d\n", dp[][m]);
}
P1057 传球游戏的更多相关文章
- 洛谷 P1057 传球游戏 解题报告
P1057 传球游戏 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹 ...
- 洛谷P1057 传球游戏(记忆化搜索)
点我进入题目 题目大意:n个小孩围一圈传球,每个人可以给左边的人或右边的人传球,1号小孩开始,一共传m次,请问有多少种可能的路径使球回到1号小孩. 输入输出:输入n,m,输出路径的数量. 数据范围:4 ...
- 洛谷——P1057 传球游戏
P1057 传球游戏 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹 ...
- P1057 传球游戏——小学生dp
P1057 传球游戏 设f[i][j]为第i次传到j的方案数: f[0][1]=1; 单独处理开头和结尾: #include<cstdio> #include<cstring> ...
- 洛谷 P1057 传球游戏 【dp】(经典)
题目链接:https://www.luogu.org/problemnew/show/P1057 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游 ...
- P1057 传球游戏 dp
题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:nn个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个 ...
- 洛谷 P1057 传球游戏
题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同 ...
- Codevs 1148 == 洛谷 P1057 传球游戏
1148 传球游戏 2008年NOIP全国联赛普及组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题目描述 Description 上体育课的时候,小蛮的老师 ...
- luogu P1057 传球游戏
题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同 ...
随机推荐
- Mybatis获取插入记录的自增长ID
转自:http://blog.csdn.net/tolcf/article/details/39035259 1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“k ...
- 【常用配置】Hadoop-2.6.5在Ubuntu14.04下的伪分布式配置
core-site.xml <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet t ...
- Modular Inverse(zoj3609+欧几里德)
Modular Inverse Time Limit: 2 Seconds Memory Limit: 65536 KB The modular modular multiplicative ...
- The Most Simple Introduction to Hypothesis Testing
https://www.youtube.com/watch?v=UApFKiK4Hi8
- 51Nod 最小公倍数之和V3
这题公式真tm难推……为了这题费了我一个草稿本…… woc……在51Nod上码LaTeX码了两个多小时…… 一开始码完了前半段,刚码完后半段突然被51Nod吃了,重新码完后半段之后前半段又被吃了,吓得 ...
- float清除浮动
清除浮动: 在非IE浏览器下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响 ...
- 使用node.js进行API自动化回归测试
概述 传统的QA自动化测试通常是基于GUI的,比如使用Selenium,模拟用户在界面上操作.但GUI测试的开发.维护成本和运行的稳定性一直是测试界的老大难问题.投入大量的人力物力开发.维护.运行,却 ...
- http请求之get和post的区别
前言:大家现在度娘一下,查得最多的区别,可能就是: “Get把参数写在URL中,Post通过请求体来传参的” “GET没有POST安全,因为Get参数直接显示在URL上” “Get请求在URL中传送的 ...
- Telephone dialer
运行电话拨号器,需要加这个权限,否则不会打通电话.这个权限是用户权限,是谷歌工程师为了跟自己撇清关系,用户需要权限的时候自己加. 运行android程序的时候提示:ActivityManager: W ...
- 结对项目-四则运算"软件"之升级版
本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 github地址为:https://github.com/L ...