- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
http ://
护数列
【问题描述】
请写一个程序,要求维护一个数列,支持以下6 种操作: 请注意,格式栏
中的下划线 _ ’表示实际输入文件中的空格)
操作编号 输入文件中的格式 说明
在当前数列的第po si 个数字后插入tot
1. 插入 INSERT_po si_tot_c _c _..._c 个数字:c , c , , c ;若在数列首插
1 2 tot 1 2 tot
入,则po si 为0
从当前数列的第po si 个数字开始连续
2. 删除 DELETE_po si_tot
删除tot 个数字
将当前数列的第po si 个数字开始的连
3. 修改 MAKE-SAME_po si_tot_c
续tot 个数字统一修改为c
取出从当前数列的第po si 个数字开始
4. 翻转 REVERSE_po si_tot
的tot 个数字,翻转后放入原来的位置
计算从当前数列开始的第po si 个数字
5. 求和 GET-SUM_po si_tot
开始的tot 个数字的和并输出
6. 求和最 求出当前数列中和最大的一段子列,
MAX-SUM
大的子列 并输出最大和
【输入格式】
输入文件的第 1 行包含两个数N 和M ,N 表示初始时数列中数的个数,M
表示要进行的操作数目。
第2 行包含N 个数字,描述初始时的数列。
以下M 行,每行一条命令,格式参见问题描述中的表格。
【输出格式】
对于输入数 中的GET-SUM 和MAX-SUM 操作,向输出文件依次打印结
果,每个答案(数字)占一行。
【输入样例】
9 8
2 -6 3 5 1 -5 -3 6 3
GET-SUM 5 4
MAX-SUM
INSERT 8 3 -5 7 2
http ://
DELETE 12 1
MAKE-SAME 3 3 2
REVERSE 3 6
GET-SUM 5 4
MAX-SUM
【输出样例】
-1
10
1
10
【样例说明】
初始时,我们拥有数列
2 -6 3 5 1 -5 -3 6 3
执行操作GET-SUM 5 4 ,表示求出数列中从第5 个数开始连续4 个数字之和,
如下图中的灰色部分1+(-5)+(-3)+6 = -1 :
2 -6 3 5 1 -5 -3 6 3
执行操作MAX-SUM ,表示要求求出当前数列中最大的一段和,即如下图所
示,
文档评论(0)