博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU max sum(最大子序列之和)
阅读量:6517 次
发布时间:2019-06-24

本文共 828 字,大约阅读时间需要 2 分钟。

一开始直接把case++写在输出位置,结果PE,以为是有什么问题,结果是自己在提交框在原来代码上没有覆盖,导致两段代码在一起提交上去,出现两个main函数当然PE了

sum<0有两种情况,当第一个数是小于0,就直接置为0,然后first的备胎tmp会+1,如果sum1是大于零的,但是到下一个数相加后因为这个数负数太大,sum<0了,但是此时sum1已经保存为maxsum,然后tmp+1后,后面继续累加sum2,如果sum2能大于maxsum,就等于替换了上次的sum1喽,然后后面可能各个子序列sum3,sum4,sumn,都会相邻的以maxsum为中间值替换,最后输出最大的maxsum。

 

#include 
using namespace std;int main(){ int i,t,a,T,sum,fst,last,tmp,maxsum,casen=0; cin>>T; while(T--){ casen++; sum=0,fst=0,last=0,maxsum=-1005,tmp=1; cin>>t; for(i=1;i<=t;i++){ cin>>a; sum+=a; if(sum>maxsum){ maxsum=sum; fst=tmp; last=i; } if(sum<0){ sum=0; tmp=i+1; } } cout<<"Case "<
<<":"<

 

 

转载于:https://www.cnblogs.com/zhangmingzhao/p/7256445.html

你可能感兴趣的文章
Racket 6.11提供了稳定的细化类型和依赖函数特性
查看>>
自做Windows上界面美观的PHP集成环境软件
查看>>
Javascript加载执行方法总结
查看>>
温故知新之JS基础
查看>>
关于js高级程序设计第三版中关于arguments论述的一个错误
查看>>
Linux Namespace系列(01):Namespace概述
查看>>
正则表达式小结
查看>>
使用CSS处理标题过长,自动截断,兼容响应式布局
查看>>
Hexo-Neat介绍
查看>>
细说C#:委托的简化语法,聊聊匿名方法和闭包(上)
查看>>
Elixir Ecto: 使用 ExMachina 批量生成测试数据
查看>>
虚拟机类加载机制(读书笔记)
查看>>
PHP学习计划
查看>>
[稀土掘金日报] JavaScript 开发者必备的资源合集
查看>>
Win软件私家珍藏-常用软件工具使用总结
查看>>
iToolkit,推荐我们自己做的一套前端组件
查看>>
Junit源码阅读(一)
查看>>
JavaScript设计模式与开发实践 | 01 - 面向对象的JavaScript
查看>>
捷信达酒店管理系统使用说明
查看>>
使用java api 创建excel内容并发送邮件
查看>>