http://poj.org/problem?id=2479

从前向后保存起点到每一点的最长串,从后向前保存尾点到每一点的最长串。

然后枚举中断点,找前后和最大值就行了。

#include<iostream>
#include<cstdio>
#define MIN -0x3f3f3f3f;
using namespace std; int a[],lmax[],rmax[],n; int main()
{
int T;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
lmax[] = MIN;
rmax[n+] = MIN;
for(int i = ;i <= n;i++) scanf("%d",&a[i]);
int sum = ;
for(int i = ;i <= n;i++)
{
sum += a[i];
if(lmax[i-] < sum) lmax[i] = sum;
else lmax[i] = lmax[i-];
if(sum < ) sum = ;
}
sum = ;
for(int i = n;i >= ;i--)
{
sum += a[i];
if(rmax[i+] < sum) rmax[i] = sum;
else rmax[i] = rmax[i+];
if(sum < ) sum = ;
}
int maxx = MIN;
for(int i = ;i < n;i++) maxx = max(maxx,lmax[i]+rmax[i+]);
printf("%d\n",maxx);
}
return ; }

POJ_2479_DP的更多相关文章

随机推荐

  1. 03_input type="number" 输入允许小数点后两位

    <input type="number" min="0" max="100" step="0.01"/> & ...

  2. shiro采坑指南—基础概念与实战

    说明   代码及部分相关资料根据慕课网Mark老师的视频进行整理.   其他资料: shiro官网 基础概念 Authenticate/Authentication(认证)   认证是指检查用户身份合 ...

  3. java高并发梳理

  4. 密码 | 对称加密 - AES

    一.AES 算法简介 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准,用来替换 ...

  5. C#实现DataTable转.CSV文件

    将DataTable转换成CSV文件是一种常见的转换形式,主要通过遍历Table的每行,再对每行遍历每列,实现对数据的读取,然后用分隔符分隔Table的每个栏位数据,把读取的字符写入到CSV文件中.这 ...

  6. 动态内存分配(C++)

    C++中的动态内存分配 C++中通过new关键字进行动态内存分配 C++中的动态内存申请是基于类型进行的 delet关键字用于内存释放 //变量申请 Type*pointer = new Type; ...

  7. 求1-n 中与 m 互质的素因子 (容斥原理)

    ll prime[100]; ll cnt; void getprime(){ cnt = 0; ll num = m; for(ll i = 2; i*i <= m; i++){ // sqr ...

  8. hdu6601 主席树

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6601 Problem Description N sticks are arranged in a r ...

  9. restframework 视图

    重要知识点 as_view()获取的是view方法名,当url配版成功,执行view方法 一.逻辑封装(mixins, generics) path('author/', views.AuthorVi ...

  10. make_safe

    from django.utils.safestring import mark_safe mark_safe('<input type="checkbox" id=&quo ...