NOIP 2008 普及组 传球游戏「建议收藏」

NOIP 2008 普及组 传球游戏「建议收藏」超时#include<bits/stdc++.h>usingnamespacestd;intn,m,ans;//第cnt次传球后,球在编号为x的同学手上voiddfs(intcnt,intx){ if(cnt==m){ if(x==0)ans++; return; } dfs(cnt+1,(x+1)%n); dfs(cnt+1,(x-1+n)%n); }intmain(){.

大家好,又见面了,我是你们的朋友全栈君。

  • 超时,满足40%的数据
#include <bits/stdc++.h>
using namespace std;

int n, m, ans;

//第cnt次传球后,球在编号为x的同学手上 
void dfs(int cnt, int x) { 
   
	if (cnt == m) { 
   
		if (x == 0) ans ++;
		return;
	}
	
	dfs(cnt + 1, (x + 1) % n);
	dfs(cnt + 1, (x - 1 + n) % n);	
}

int main() { 
   
	cin >> n >> m;	
	
	//第0次传球,球在编号为0的同学手上 
	dfs(0, 0);
	cout << ans;
	
	return 0;
}
  • 动态规划
#include <bits/stdc++.h>
using namespace std;

const int N = 40;
int n, m, dp[N][N];

int main() { 
   
	cin >> n >> m;

	//第0次传球在0号同学手中的方法数是1,即初始状态
	dp[0][0] = 1;
	
	//状态转移依赖于上一次传球的状态,所以外循环是1...m
	for (int i = 1; i <= m; i ++) { 
   
		for (int j = 0; j < n; j ++) { 
   
			//dp[i][j]表示第i次传球在j号同学手中的方法数
			dp[i][j] = dp[i - 1][(j + 1) % n] + dp[i - 1][(j - 1 + n) % n];
		}
	}
	cout << dp[m][0] << endl;

	return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159232.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 方法的参数传递

    方法的参数传递

    2021年9月28日
    44
  • goland 2021.9 激活码【最新永久激活】

    (goland 2021.9 激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/ide…

    2022年3月26日
    83
  • android换苹果,苹果换手机怎么转移数据?苹果、安卓都可以一键转移数据[通俗易懂]

    android换苹果,苹果换手机怎么转移数据?苹果、安卓都可以一键转移数据[通俗易懂]原标题:苹果换手机怎么转移数据?苹果、安卓都可以一键转移数据要更换手机的话,旧手机上的数据怎么办还真的是一个难题啊,毕竟手机用久了,上面的有各种重要的数据不是。那苹果手机换机的话,将数据进行转移,可以分成两种情况,一种吧,就是苹果转苹果,一种就是苹果转安卓了。一、苹果手机数据转移到新iPhone1、借助iCloud云备份手机自带的云备份功能,肯定是可以用上的。①手机连接上WiFi,然后在手机“设置…

    2022年5月26日
    73
  • c++ map有序还是无序_hashmap与map的区别

    c++ map有序还是无序_hashmap与map的区别概述简单对比map和unordered_map的性能。map内部是红黑树,在插入元素时会自动排序,而无序容器unordered_map内部是散列表,通过哈希而不是排序来快速操作元素,使得效率更高。当你不需要排序时选择unordered_map的效率更高。测试范例测试代码#include&lt;iostream&gt;#include&lt;string&gt;#in…

    2022年9月23日
    0
  • idea全局搜索快捷键总结

    一、Ctrl+F或者Ctrl+Shift+R按照文本的内容查找1、相当于eclipse的ctrl+H,Ctrl+F是在本页查找2、相当于eclipse的ctrl+H,Ctrl+Shift+R是全局查找二、Ctrl+Shift+N按文件名搜索文件同搜索类类似,只不过可以匹配所有类型的文件了三、Ctrl+H查看类的继承关系四、Alt+F7查找类或方法在哪被使用五、Sh…

    2022年4月5日
    2.6K
  • 软件概要设计与详细设计

    (一)概要设计的任务与步骤1、总体设计的必要性:可以站在全局角度上,花较少成本,从抽象的层次上分析对比多种可能性的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统。2、总体设计的两个阶段:(1)系统设计阶段:确定系统的具体实现方案(2)结构设计阶段:确定软件结构。3、总体设计的9个步骤:(1)设想供选择的方案(2)选取…

    2022年4月6日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号