step4算法设计技术.docVIP

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
step4算法设计技术

目 录 算A05 缺失的数据(按位排序) 1 算A06 纪念品分组(贪心法) 2 算A07 蛇行矩阵 3 算A08 士兵队列训练问题 4 算A09 绝对值排序 5 算B01 kitty猫的基因编码(递归) 6 算B02 数列(蛮力法) 7 算B03 统计数字(按位排序) 8 算B04 四塔问题(递归) 9 算B05 逆序对个数(蛮力法(分治法) 10 注:算表示本题属于算法设计技术,A表示简单,B表示稍难。 算A05 缺失的数据(按位排序) 【问题描述】 网络传输中由于受到链路层的最大传输单元(Maximum Transmission Unit,MTU)的限制,在很多情况下需要对原始的数据报进行分片,使得每一分片可以顺利的传输。F公司的网络设备根据MTU的限制将每个原始的数据划分成n片,用1~n这n个数字对每个分片进行编号,在目的主机上将这些分片重新组合成原始的数据。可是在测试中发现一个问题:经常出现缺失一个数据分片的情况。公司希望在将分片重新组合前就能知道缺失的数据分片编号。 【数据输入】有多组输入数据,你必须处理到EOF为止。 每组输入数据第一行就一个整数n(2=n=105), 表示数据分成了n片。 第二行有n-1个以空格隔开的整数,表示目的主机收到的数据分片的编号,由于网络传输的一些因素,数据分片到达的顺序是随机的。 【数据输出】输出缺失的数据片编号。 【样例输入】 5 5 3 2 1 【样例输出】 4 算A06 纪念品分组(贪心法) 【问题描述】 元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。 【数据输入】 输入包含多组测试数据,每个测试数据包含n+2行: 第1行包括一个整数w,为每组纪念品价格之和的上限。 第2行为一个整数n,表示购来的纪念品的总件数。 第3~n+2行每行包含一个正整数pi (5 = pi = w),表示所对应纪念品的价格。 1 = n = 30000, 80 = w = 200 【数据输出】对每个测试数据,输出一行,包含一个整数,即最少的分组数目。 相邻两个测试数据间用一个空行隔开。 【样例输入】 100 9 90 20 20 30 50 60 70 80 90 【样例输出】 6 算A07 蛇行矩阵 【问题描述】蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。 【数据输入】本题有多组数据,每组数据由一个正整数N组成。(N不大于100) 【数据输出】对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。 【样例输入】 5 【样例输出】 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11 算A08 士兵队列训练问题 【问题描述】 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下的向小序号方向靠拢,继续从头开始进行一至二报数。。。,以后从头开始轮流进行一至二报数、一至三报数直到剩下的人数不超过三人为止。 【数据输入】本题有多个测试数据组,第一行为组数N,接着为N行新兵人数,新兵人数不超过5000。 【数据输出】共有N行,分别对应输入的新兵人数,每行输出剩下的新兵最初的编号,编号之间有一个空格。 【样例输入】 2 20 40 【样例输出】 1 7 19 1 19 37 算A09 绝对值排序 【问题描述】 输入n(n=100)个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。 【数据输入】输入数据有多组,每组占一行,每行的第一个数字为n,接着是n个整数,n=0表示输入数据的结束,不做处理。 【数据输出】对于每个测试实例,输出排序后的结果,两个数之间用一个空格隔开。每个测试实例占一行。 【样例输入】 3 3 -4 2 4 0 1 2 -3 0 【样例输出】 -4 3 2 -3 2 1 0 算B01 kitty猫的基因编码(递归) 【问题描述】kitty 的基因编码如下定义: kitty的基因由一串长度2^k(k=8)的01序列构成,为了方便研究,需要把,01序列转换为ABC编码。用T(s)来表示01序列s的 ABC编码 T(s)=‘A(当S全由0组成) T(s)=‘B(当s全由1组成)

文档评论(0)

zhanghc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档