1007. Maximum Subsequence Sum (25)
来源:互联网 发布:孙悟空结拜兄弟 知乎 编辑:程序博客网 时间:2024/04/29 06:37
求连续子序列的最大和,记录起始与结束位置。
扫描一遍,和小于0则舍弃。注意全为负数的情况。
#include <iostream>#include <stdio.h>#include <string.h>#include <vector>#include <map>#include <stack>#include <queue>#include <algorithm>#include <set>using namespace std;int a[10001];int main(){ int k; while(scanf("%d",&k)!=EOF){ for(int i=0;i<k;i++){ scanf("%d",&a[i]); } int tmp=0,maxsum=-1; int start,en=0; for(int i=0;i<k;i++){ tmp+=a[i]; if(tmp>maxsum){ maxsum=tmp; en=i; } else if(tmp<0){ tmp=0; } } int backtmp=0; for(int i=en;i>=0;i--){ backtmp+=a[i]; if(backtmp==maxsum) start=i; } if(maxsum<0) printf("%d %d %d",0,a[0],a[k-1]); else printf("%d %d %d",maxsum,a[start],a[en]); } return 0;}
0 0
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 1007. Maximum Subsequence Sum (25)
- 设计模式--工厂模式
- CopyOnWrite 讲解及实例
- Wireshark does not show SSL/TLS
- 【android】问题整理集
- org.springframework.beans.factory.BeanDefinitionStoreException解决
- 1007. Maximum Subsequence Sum (25)
- django连接mysql配置方法总结(转)
- LeetCode#3. Longest Substring Without Repeating Characters
- react-bits:Function As Children
- Android中不同类型多布局的展示BaseMultiItemQuickAdapter详解简单易学
- iOS 简易的画板
- HTML各版本DTD类型介绍及格式
- java生成N位随机数
- 移动web页面前端开发总结