- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
动态规划练习题及解答1
动态规划练习题
?
[题1] 多米诺骨牌(DOMINO)
问题描述:有一种多米诺骨牌是平面的,其正面被分成上下两部分,每一部分的表面或者为空,或者被标上1至6个点。现有一行排列在桌面上:
顶行骨牌的点数之和为6+1+1+1=9;底行骨牌点数之和为1+5+3+2=11。顶行和底行的差值是2。这个差值是两行点数之和的差的绝对值。每个多米诺骨牌都可以上下倒置转换,即上部变为下部,下部变为上部。
现在的任务是,以最少的翻转次数,使得顶行和底行之间的差值最小。对于上面这个例子,我们只需翻转最后一个骨牌,就可以使得顶行和底行的差值为0,所以例子的答案为1。
输入格式:
文件的第一行是一个整数n(1〈=n〈=1000〉,表示有n个多米诺骨牌在桌面上排成一行。接下来共有n行,每行包含两个整数a、b(0〈=a、b〈=6,中间用空格分开〉。第I+1行的a、b分别表示第I个多米诺骨牌的上部与下部的点数(0表示空)。
输出格式:
只有一个整数在文件的第一行。这个整数表示翻动骨牌的最少次数,从而使得顶行和底行的差值最小。
?
[题2] Perform巡回演出
题目描述:
Flute市的Phlharmoniker乐团2000年准备到Harp市做一次大型演出,本着普及古典音乐的目的,乐团指挥L.Y.M准备在到达Harp市之前先在周围一些小城市作一段时间的巡回演出,此后的几天里,音乐家们将每天搭乘一个航班从一个城市飞到另一个城市,最后才到达目的地Harp市(乐团可多次在同一城市演出).
由于航线的费用和班次每天都在变,城市和城市之间都有一份循环的航班表,每一时间,每一方向,航班表循环的周期都可能不同.现要求寻找一张花费费用最小的演出表.
输入: 输入文件包括若干个场景.每个场景的描述由一对整数n(2=n=10)和k(1=k=1000)开始,音乐家们要在这n个城市作巡回演出,城市用1..n标号,其中1是起点Flute市,n是终点Harp市,接下来有n*(n-1)份航班表,一份航班表一行,描述每对城市之间的航线和价格,第一组n-1份航班表对应从城市1到其他城市(2,3,...n)的航班,接下的n-1行是从城市2到其他城市(1,3,4...n)的航班,如此下去.
每份航班又一个整数d(1=d=30)开始,表示航班表循环的周期,接下来的d个非负整数表示1,2...d天对应的两个城市的航班的价格,价格为零表示那天两个城市之间没有航班.例如3 75 0 80表示第一天机票价格是75KOI,第二天没有航班,第三天的机票是80KOI,然后循环:第四天又是75KOI,第五天没有航班,如此循环.输入文件由n=k=0的场景结束.
输出:
对每个场景如果乐团可能从城市1出发,每天都要飞往另一个城市,最后(经过k天)抵达城市n,则输出这k个航班价格之和的最小值.如果不可能存在这样的巡回演出路线,输出0.
样例输入: 样例输出:
3 6 460
2 130 150 0
3 75 0 80
7 120 110 0 100 110 120 0
4 60 70 60 50
3 0 135 140
2 70 80
2 3
2 0 70
1 80
0 0
?
[题3] 复制书稿(BOOKS)
问题描述:假设有M本书(编号为1,2,…M),想将每本复制一份,M本书的页数可能不同(分别是P1,P2,…PM)。任务时将这M本书分给K个抄写员(K〈=M〉,每本书只能分配给一个抄写员进行复制,而每个抄写员所分配到的书必须是连续顺序的。
意思是说,存在一个连续升序数列0=bo〈b1〈b2〈…bk-1 bk=m,这样,第I号抄写员得到的书稿是从bi-1+1到第bi本书。复制工作是同时开始进行的,并且每个抄写员复制的速度都是一样的。所以,复制完所有书稿所需时间取决于分配得到最多工作的那个抄写员的复制时间。试找一个最优分配方案,使分配给每一个抄写员的页数的最大值尽可能小(如存在多个最优方案,只输出其中一种)。
输入格式:
文件的第一行是两个整数m和k (1〈=k〈=m〈=500)。
第二行有m个整数P1,P2,…,Pm,这m个整数均为正整数且都不超过1000000。每两个整数之间用空格分开。
输出格式:
文件有k行,每行有两个正整数。整数之间用空格分开。
第I行的两个整数ai和bi,表示第I号抄写员所分配得到的书稿的起始编号与终止编号。
动态规划题参考程序:
题1:
解决问题:例子的上下部分之差是6+1+1+1-(1+5+3+2)=(6-1)+(1-5)+(1-3)+(1-2)=-
您可能关注的文档
- 公园项目工可.doc
- 六EXC9000型全数字式静态励磁系统安装指南.doc
- 六年级奥数行程比例解行程问题(ABC级)学生版.docx
- 六年级科学下册期末.doc
- 六号线出井方案.doc
- 六年级上册科学课实验计划1.doc
- 公文写作 复习大纲(含答案).doc
- 六种检验仪器操作规程.docx
- 六级单词高效记忆.doc
- 六进制同步加法计数器-(无效状态为000_101).docx
- 2025年黑龙江省七台河市单招职业倾向性测试题库及答案1套.docx
- 2022年博尔塔拉职业技术学院单招职业技能考试题库附答案.docx
- 2025年黑龙江省七台河市单招职业倾向性测试题库推荐.docx
- 2025年黑龙江省七台河市单招职业倾向性考试题库必考题.docx
- 2025年黑龙江省七台河市单招职业适应性考试题库及答案1套.docx
- 2025年黑龙江生态工程职业学院单招职业适应性测试题库推荐.docx
- 2025年黑龙江省单招职业适应性测试题库最新.docx
- 2022年亳州职业技术学院单招职业技能考试题库必考题.docx
- 2025年黑龙江省单招职业适应性考试题库附答案.docx
- 2025年黑龙江省七台河市单招职业倾向性测试题库必考题.docx
文档评论(0)