没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
第十四章 动态规划
1、数塔问题(tower.pas)
设有一个三角形的数塔,如下图所示。顶点结点称为根结点,每个结点有一个整数数值。从顶点出发
在每一结点可以选择向左走或是向右走,一起走到底层,要求找出一条路径,使路径上的值最大。
【样例输入】
数塔层数
【样例输出】
2、拦截导弹(missile.pas)
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然
它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到
敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。
输入导弹依次飞来的高度(雷达给出的高度数据是不大于 的正整数),计算这套系统最多能拦
截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。
【样例输入】
【输出样例】
(最多能拦截的导弹数)
(要拦截所有导弹最少要配备的系统数)
3、最短路径(short.pas)
在下图中找出从起点到终点的最短路径。
【样例输入】
1
7
4
3 8
6
7
5
4 6
5
6
V
1
V
2
V
3
V
4
V
5
V
6
V
7
【样例输出】
4、挖地雷(Mine.pas)
在一个地图上有 个地窖( )!每个地窖中埋有一定数量的地雷。同时,给出地窖之间的连
接路径,并规定路径都是单向的。某人可以从任一处开始挖地雷,然后沿着指出的连接往下挖(仅能选择
一条路径),当无连接时挖地雷工作结束。设计一个挖地雷的方案,使他能挖到最多的地雷。
【输入格式】
地窖的个数
"
,"
,……"
每个地窖中的地雷数
#,$表示从 # 可到 $
#,$
%%
,表示输入结束
【输出格式】
&''&''%%''&(挖地雷的顺序
)*#最多挖出的地雷数
【输入样例】Mine.in
【输出样例】Mine.out
+++
5、轮船问题(ship.pas)
【问题描述】
某国家被一条河划分为南北两部分,在南岸和北岸总共有 对城市,每一城市在对岸都有唯一的友好
城市,任何两个城市都没有相同的友好城市。每一对友好城市都希望有一条航线来往,于是他们向政府提
出了申请。由于河终年有雾。政府决定允许开通的航线就互不交叉(如果两条航线交叉,将有很大机会撞
船)。兴建哪些航线以使在安全条件下有最多航线可以被开通。
2
【输入格式】
输入文件,-./包括了若干组数据,每组数据格式如下:
第一行两个由空格分隔的整数 ,0,〈〈,〈0〈。 表示河的长度而 0 表示
宽。第二行是一个整数 , .,表示分布在河两岸的城市对数。接下来的 行每行有两
个由空格分隔的正数 1,2(1、2〈〉,描述每一对友好城市与河起点的距离,1 表示北岸城市
的距离而 2 表示南岸城市的距离。在河的同一边,任何两个城市的位置都是不同的。
【输出格式】
输出文件,-.:要在连续的若干行里给出每一组数据在安全条件下能够开通的最大航线数目。
【输入输出样例】
3-
3-
6、骑士游历问题(knight.pas)
【详见教程】
7、砝码称重(weight.pas)
设有 ,,,,, 的砝码各若干枚(其总重≤),要求:
【输入格式】
,表示 砝码有 个, 砝码有 个, 砝码有 个.
【输出格式】
4, 表示用这些砝码能称出的不同重量的个数,但不包括一个砝码也不用的情况.
【输入样例】
【输出样例】
4,表示可以称出 ,, 三种不同的重量
8、装箱问题(boxes.pas)
有一个箱子容量为 ((正整数,5(5),同时有 个物品( 5),每个物品有一个
体积(正整数)。要求从 个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。
【输入格式】
箱子的容量 (
物品数
接下来 行,分别表示这 个物品的体积
【输出格式】
箱子剩余空间
3
【输入样例】boxes.in
【输出样例】6
9、合唱队形(Chorus.pas)
位同学站成一排,音乐老师要请其中的,+&.位同学出列,使得剩下的 & 位同学排成合唱队形。合
唱队形是指这样的一种队形:设 & 位同学从左到右依次编号为 !!%!&,他们的身高分别为 4
!4
!%!
4
&
,则他们的身高满足 4
4
% 4
!4
74
8
7%74
&
,55&.。
已知所有 位同学的身高,计算最少需要几位同学出列,可以使得剩下的同学排成合唱队形。
【输入文件】
输入文件 9 的第一行是一个整数 (55),表示同学的总数。第二行有 个整数,
用空格分隔,第 个整数 4
(54
5)是第 位同学的身高(厘米)。
【输出文件】
输出文件 9 包括一行,这一行只包含一个整数,就是最少需要几位同学出列。
【样例输入】9
【样例输出】9
10、橱窗布置(Flower.pas)
【详见教程】
背包问题
【例 】: 背包
【问题描述】
一个旅行者有一个最多能用 公斤的背包,现在有 件物品,它们的重量分别是 ",",!"!
它们的价值分别为 1!1!!1若每种物品只有一件求旅行者能获得最大总价值。
【输入格式】
第一行:两个整数,),背包容量,) .和 ,物品数量, .;
第 8 行:每行二个整数 "!1,表示每个物品的重量和价值。
4
【输出格式】
仅一行,一个数,表示最大总价值。
【样例输入】-9;
【样例输出】-9;
【解法一】
【算法分析】
设 <,,.表示前 件物品,总重量不超过 的最优价值,则 <,,.,<,+,+"=>.81=>!<,?+
,).;<(,)即为最优解。
下面例出 @=?,#>的值,? 表示前 ? 件物品,# 表示重量
@=?!> @=?!> @=?!> @=?!> @=?!> @=?!> @=?!> @=?!> @=?!> @=?!>
?
?
?
?
【参考程序】,顺推法.
--9;A
9
AA
(
!!B!/A
9!/0=><A
</0=!><A
<9,!0/./A
6
<70//0A
CA
DEF?
,-!G-9;G.A
5
剩余36页未读,继续阅读
资源评论
- yiwaerdy2012-10-22非常齐全,非常多的DP题集,基本都给出 了pascal代码!还是非常有用的
yahximusiz
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功