51nod 1049 最大子段和
2016-03-02 22:27
316 查看
#include <iostream> typedef long long ll; const int MAX = 5e4 + 5; ll arr[MAX]; int main() { ll num; std::cin >> num; bool flag = true; for (ll i = 0; i != num; ++i) { std::cin >> arr[i]; if (arr[i] > 0) flag = false; } if (flag) { std::cout << "0\n"; return 0; } ll sum1 = 0, sum2 = 0; for (int i = 0; i != num; ++i) { if (arr[i] > sum1 + arr[i]) sum1 = arr[i]; //sum1 += arr[i]; else sum1 += arr[i]; if (sum1 >= sum2) sum2 = sum1; } std::cout << sum2 << std::endl; //std::cout << MaxSubArray(arr, num); return 0; }
相关文章推荐
- Maven常用命令
- 【转载】Stack Overflow: The Architecture - 2016 Edition
- P103 单源最短路问题 第三种Dijkstra算法
- bzoj 1083: [SCOI2005]繁忙的都市
- 常用的linux命令
- MySQL主从同步实验
- HDU1010(回溯剪枝)
- Shell字符操作命令——grep、sed、awk
- 【转】matlab函数_连通区域
- 笔记
- 写在首页
- 夺命雷公狗---微信开发32----公众平台营销咨询系统1
- 【HDOJ】4043 FXTZ II
- NetBeans下Tomcat无法查看web应用运行,报错:部署错误
- Android软件开发随笔笔记第一讲
- 【杭电】[2048]神、上帝以及老天爷
- BASIC-15 字符串对比 字符串 大小写 VIP试题
- Python 第五天 装饰器
- Virtual Box上安装CentOS7
- bzoj 1079: [SCOI2008]着色方案