预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共90页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

动态规划的模型构建及其一般优化方法NOIP的动态规划试题动态规划的基本概念动态规划的时间复杂度编程实现?问题1:拦截导弹分析问题2:乘积最大分析问题3:求最长公共子序列分析样例动态规划主程序框架样例运行过程问题4:01背包问题动态规划主程序如下问题5:带条件的背包问题分析动态规划思考题6:系统可靠性样例分析问题7:能量项链分析样例: N=4,4颗珠子的头标记与尾标记依次为 (2,3)(3,5)(5,10)(10,2)。 我们用记号⊕表示两颗珠子的聚合操作,释放总能量: ((4⊕1)⊕2)⊕3)=10*2*3+10*3*5+10*5*10=710动态规划问题8:决斗问题解法继续问题9:传纸条(NOIP2008)贪心分析分析2问题10:免费馅饼 输入数据: 第一行:宽度W(1~99奇数)和高度H(1~100整数) 接下来给出了一块馅饼信息。由4个正整数组成,分别表示了馅饼的 初始下落时刻、水平位置、下落速度、分值。 游戏开始时刻为0。从1开始自左向右依次对水平方向的每格编号。 输出数据: 收集到的馅饼最大分数之和。 由上图可知,尽管下落了4个馅饼,但只能接到3个: 第1时刻可以接到分值为5的馅饼 第2时刻可以接到分值为3的馅饼 第3时刻可以接到分值为4的馅饼 因此馅饼的总分值为5+3+4=12分析动态规划问题11:加分二叉树样例 中序遍历为1,2,3,4,5的二叉树有很多,下图是其中的三棵,其中第三棵加分最大,为145.分析动态规划问题12:聚会的快乐样例分析问题13:警卫安排分析样例 该图有6个区域如图1,安排情况如图2,红色点为安排了警卫。 2号警卫可以观察1,2,5,6;3号警卫可以观察1,3;4号警卫可以观察1,4; 费用:16+5+4=25 分析动态规划procedurework(now:longint); vari,j,sum,tmp:longint; begin fori:=1tot[now]dowork(w[now,i]);//对每个儿子进行处理 f[now,0]:=0;//以下处理now被父亲看到 fori:=1tot[now]doinc(f[now,0],f[w[now,i],1]);//now的儿子被儿子看到 sum:=0;//以下处理在now被儿子看到的 fori:=1tot[now]do//now的儿子被儿子看到或者或安排警卫; inc(sum,min(f[w[now,i],1],f[w[now,i],2])); f[now,1]:=maxlongint; fori:=1tot[now]do//枚举哪个儿子放警卫 begin tmp:=sum-min(f[w[now,i],1],f[w[now,i],2])+f[w[now,i],2]; f[now,1]:=min(f[now,1],tmp); end; f[now,2]:=c[now];//以下处理在now放置警卫 fori:=1tot[now]doInc(f[now,2],min(min(f[w[now,i],0],f[w[now,i],1]),f[w[now,i],2])); f[now,1]:=min(f[now,1],f[now,2]);{1包含了2状态,取优值} end;问题14:求最长下降序列分析优化具体过程: 思考?进一步分析分析输入一个长度为n的整数序列(A1,A2,……,An),从中找出一段长度不超过m的连续的子序列,使得这个序列的和最大。 例如:序列1,-3,5,1,-2,3一个简化的问题 算法一——枚举简化方程用一个二叉堆来维护S(i-k),每次求F(i)之前的操作如下:算法三:队列优化队列优化算法三算法三问题16:理想收入问题方法一方法二方法三问题17:花店橱窗布置构图动态规划改变状态的表示 [问题描述] 现有n首由RaucousRockers演唱组录制的歌曲,计划从中选择一些歌曲来发行m张唱片,每张唱片至多包含t分钟的音乐,唱片中的歌曲不能重叠。按下面的标准进行选择: (1)这组唱片中的歌曲必须按照它们创作的顺序排序; (2)包含歌曲的总数尽可能多。 输入n,m,t,和n首歌曲的长度,它们按照创作顺序排序,没有一首歌超出一张唱片的长度,而且不可能将所有歌曲的放在唱片中。输出所能包含的最多的歌曲数目。设n首歌曲按照创作顺序排序后的长度为long[1..n],则动态规划的状态表示描述为: g[i,j,k],(0≤i≤n,0≤j≤m,0≤k<t),表示前i首歌曲,用j张唱片另加k分钟来录制,最多可以录制的歌曲数目。 状态转移方程为: 当k≥long[i],i≥1时: g[i,j,k]=max{g[i-1,j,k-long[i]]+1,g[i-1,j,k]} 当k<long[i],i≥1时: g[