- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
绵阳中学NOIP动态规划基础练习
所有题目内存限制256MB,时限1S
饥饿的牛
源程序名 HUNGER.??? (PAS,C,CPP)
可执行文件名 HUNGER.EXE
输入文件名 HUNGER.IN
输出文件名 HUNGER.OUT
牛在饲料槽前排好了队。饲料槽依次用1到N(1=N=2000)编号。每天晚上,一头幸运的牛根据约翰的规则,吃其中一些槽里的饲料。
约翰提供B个区间的清单。一个区间是一对整数start-end,1=start=end=N,表示一些连续的饲料槽,比如1-3,7-8,3-4等等。牛可以任意选择区间,但是牛选择的区间不能有重叠。
当然,牛希望自己能够吃得越多越好。给出一些区间,帮助这只牛找一些区间,使它能吃到最多的东西。
在上面的例子中,1-3和3-4是重叠的;聪明的牛选择{1-3,7-8},这样可以吃到5个槽里的东西。
输入
第一行,整数B(1=B=1000)
第2到B+1行,每行两个整数,表示一个区间,较小的端点在前面。
输出
仅一个整数,表示最多能吃到多少个槽里的食物。
样例
HUNGER.IN
3
1 3
7 8
3 4
HUNGER.OUT
5
顺序对齐
源程序名 ALIGN.??? (PAS,C,CPP)
可执行文件名 ALIGN.EXE
输入文件名 ALIGN.IN
输出文件名 ALIGN.OUT
考虑两个字符串右对齐的最佳解法。例如,有一个右对齐方案中字符串是AADDEFGGHC和ADCDEGH。
AAD_DEFGGHC
ADCDE__GH_
每一个数值匹配的位置值2分,一段连续的空格值-1分。所以总分是匹配点的2倍减去连续空格的段数,在上述给定的例子中,6个位置(A,D,D,E,G,H)匹配,三段空格,所以得分2*6+(-1)*3=9,注意,我们并不处罚左边的不匹配位置。若匹配的位置是两个不同的字符,则既不得分也不失分。
请你写个程序找出最佳右对齐方案。
输入
输入文件包含两行,每行一个字符串,最长50个字符。字符全部是大字字母。
输出
一行,为最佳对齐的得分。
样例
ALIGN.IN
AADDEFGGHC
ADCDEGH
ALIGN.OUT
9
筷子 (PAS,C,CPP)
可执行文件名 CHOP.EXE
输入文件名 CHOP.IN
输出文件名 CHOP.OUT
A先生有很多双筷子。确切的说应该是很多根,因为筷子的长度不一,很难判断出哪两根是一双的。这天,A先生家里来了K个客人,A先生留下他们吃晚饭。加上A先生,A夫人和他们的孩子小A,共K+3个人。每人需要用一双筷子。A先生只好清理了一下筷子,共N根,长度为T1,T2,T3TN.现在他想用这些筷子组合成K+3双,使每双的筷子长度差的平方和最小。(怎么不是和最小??这要去问A先生了,呵呵)
输入文件第一行,N,K(1≤N≤100, 0K50),第二行共N个整数,为Ti.每个整数为150之间的数。
输出文件仅一行。如果凑不齐K+3双,输出-1,否则输出长度差平方和的最小值。
样例CHOP.IN
10 1
1 1 2 3 3 3 4 6 10 20
CHOP.OUT
5
说明
第一双 1 1
第二双 2 3
第三双 3 3
第四双 4 6
(1-1)^2+(2-3)^2+(3-3)^2+(4-6)^2=5
源程序名 FATBOY.??? (PAS,C,CPP)
可执行文件名 FATBOY.EXE
输入文件名 FATBOY.IN
输出文件名 FATBOY.OUT
麦克正如我们所知的已快乐地结婚,在上个月他胖了70磅。因为手指上的脂肪过多,使他连给他最亲密的朋友斯拉夫克写一个电子邮件都很困难。
每晚麦克都详细地描述那一天他所吃的所有东西,但有时当他只想按一次某键时往往会按了不止一次,并且他的胖手指还会碰到他不想要按的键,麦克也知道自己的手指有问题,因此他在打字的时候很小心,以确保每打一个想要的字符时误打的字符不超过3个,误打的字符可能在正确字符之前也可能在其之后。
当斯拉夫克多次收到读不懂的电子邮件后,他总是要求麦克将电子邮件发3遍,使他容易读懂一点。
编写程序,帮助斯拉夫克根据他所收到的三封电子邮件求出麦克可能写出的最长的信。
输入
输入文件包含了三行文本。每一行文本包括麦克信件的一种版本。其中所有的字符都由英文字母表中的小写字母组成并且不超过100个。
输出
输出文件中第一行即唯一的一行数据应该包含斯拉夫克根据所收到的电子邮件推测出的最长信件。你可以相信问题一定有解,但解不一定是唯一的。
样例
FATBOY.IN
cecqbhvaiaedpibaluk
cabegviapcihlaaugck
adceevfdadaepcialauk
您可能关注的文档
最近下载
- 围绕中心意思写.ppt VIP
- 工资流水证明范文模板(完整版).docx VIP
- 5G应用场景白皮.pptx
- 2024校长办公会会议制度和议事规则.docx
- 【课件】文化与习俗——从“泥土”中诞生的美+课件-2024-2025学年高中美术人美版(2019)美术鉴赏.pptx VIP
- 自编情景剧《破晓》剧本(纪念五四运动).docx
- 婚姻家庭咨询师国家二级婚姻家庭咨询师考试模拟试卷试卷.doc VIP
- 2024河南师范大学教师招聘考试笔试试题.docx
- 2024-2034年中国娟姗牛奶行业市场现状分析及竞争格局与投资发展研究报告.docx
- 历年(2020-2024)全国高考数学真题分类(指数、对数、幂函数、函数图象、函数零点及函数模型)汇编(附答案).pdf
文档评论(0)