poj2593-Max Sequence(最大子段和)
来源:互联网 发布:java编程 窗口不置顶 编辑:程序博客网 时间:2024/06/06 10:20
#include <iostream>#include <cstring>#include <algorithm>using namespace std;int num[100005];int f[100005];int g[100005];int h[100005];struct poj2593 {/*[问题描述]:找出两个子段使得它们的和最大*//*[解题思路]:f[i]表示以第i个数结尾的最大子段和 * g[i]表示以第i个数开始的最大子段和 * h[i]=max{f[i],f[i-1],...,f[1]}=max{f[i],h[i-1]} */int n;void work() {while (cin >> n) {if (n == 0) break;for (int i = 1; i <= n; i++)cin >> num[i];f[0] = 0;h[0] = -1000;for (int i = 1; i <= n; i++) {f[i] = max(num[i], num[i] + f[i - 1]);h[i] = max(f[i], h[i - 1]);}int S = -2000;g[n + 1] = 0;for (int i = n; i >= 1; i--) {g[i] = max(num[i], num[i] + g[i + 1]);S = max(S, g[i] + h[i - 1]);}cout << S << endl;}}};int main(){poj2593 solution;solution.work();return 0;}
0 0
- poj2593-Max Sequence(最大子段和)
- POJ2479&&POJ2593 Maximum sum&&Max Sequence(最大连续和)
- poj 2593 Max Sequence( 最大子段和 )
- ACM POJ 2593 Max Sequence ----最大子段和问题
- 动态规划 POJ2479与POJ2593 最大子段和
- POJ2593 Max Sequence
- poj2593 Max Sequence
- poj2593 Max Sequence dp
- poj2593 Max Sequence
- POJ2593 Max Sequence
- poj2593 Max Sequence
- poj2593 Max Sequence(求两个不相交最大字段和)
- 【动态规划】poj2479 Maximum sum && poj2593 Max Sequence(求两段不相交字串的最大和)
- Max Sum hdu1003 最大子段和
- POJ 2593 Max Sequence POJ 2479 Maximum sum (线性dp 最大连续两不重叠子段和)
- nyoj 174 Max Sequence(最大子串和变形)
- ZOJ 1074 To the Max【DP】【最大子段和】
- HDU-1003 Max Sum(最大连续子段和)
- Scrapy初探
- QQ自动对话
- ASP.NET产生线程的步骤
- redis分布式缓存实现
- iOS 使用 boundingRectWithSize: 计算 UILabel 高度错误的解决方案
- poj2593-Max Sequence(最大子段和)
- SylixOS_LWIP协议栈学习:网络接口结构
- Java 异常处理
- 接口 & 抽象类
- MySQL锁的用法之行级锁
- Flash时间小人
- win10 64位 安装theano
- 思维导图学化学
- SylixOS_LWIP协议栈学习:以太网网卡接口部分初始化