最大子列和问题如何确定最大子列和的起始项及结束项?
num = int(input())
str_in = input()
a = [int(n) for n in str_in.split()]
This = Max = 0
for i in range(num):
This += a[i]
if This > Max :
Max = This
if This < 0:
This = 0
print(Max)
在此代码基础上改进,要求输出除了最多子列和以外还需要输出子列的起始和结束两项。
例:3,5,-4,6,7,4,-2,7,-5
输出:最大子列和:21 起始项:3 结束项:4
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不难吧,你在 if 里面多写几行记录下不就完了
当然,如果直接需要代码,可以搜索 hdoj1003,原题