rqnoj-208-奥运火炬到厦门-dp
这道题目是把一个连续的串看成一个环。
那么除了原始的求最大字段和外。
还存在一种情况是前面的连续最大值,加上后面的连续最大值。
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
int a[2000002];
int st[1000010];
int ed[1000010];
int main()
{
int n,i;
scanf("%d",&n); for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
a[i+n]=a[i];
}
int maxx;
maxx=-999999;
int ans;
ans=0;
// int top=0;
//st=0;
for(i=0;i<n;i++)
{
ans+=a[i];
maxx=max(ans,maxx);
if(i==0)st[i]=a[i];
else st[i]=st[i-1]+a[i];
if(ans<0)
{
ans=0;
}
}
ans=0;
for(i=n-1;i>=0;i--)
{
ed[i]=ed[i+1]+a[i];
}
for(i=1;i<n;i++)
{
st[i]=max(st[i-1],st[i]);
}
for(i=n-1;i>=0;i--)ed[i]=max(ed[i+1],ed[i]);
for(i=0;i<n;i++)
{
// cout<<st[i]<<" "<<ed[i+1]<<endl;
maxx=max(maxx,st[i]+ed[i+1]);
}
cout<<maxx<<endl; return 0;
}
rqnoj-208-奥运火炬到厦门-dp的更多相关文章
- RQNOJ 202 奥运火炬登珠峰:01背包
题目链接:https://www.rqnoj.cn/problem/202 题意: 登珠峰需要携带a(L)O2和t(L)N2. 有n个气缸可供选择.其中第i个气缸能装下a[i](L)O2和t[i](L ...
- RQNOJ 188 购物问题:树形dp
题目链接:https://www.rqnoj.cn/problem/188 题意: 商场以超低价格出售n个商品,购买第i个商品所节省的金额为w[i]. 为了防止亏本,有m对商品是不能同时买的.但保证商 ...
- RQNOJ 514 字串距离:dp & 字符串
题目链接:https://www.rqnoj.cn/problem/514 题意: 设有字符串X,我们称在X的头尾及中间插入任意多个空格后构成的新字符串为X的扩展串,如字符串X为”abcbcd”,则字 ...
- RQNOJ 201 奥运大包围:LIS + 拼链成环
题目链接:https://www.rqnoj.cn/problem/201 题意: 开始时n(n<=1000)个人手拉手围成一个圈. 后来这些人中的一些按顺序向里面出圈形成一个新圈.从而使原圈形 ...
- 【FINAL】NOI
我就是复习一下..根本就不是什么题解...谁也看不懂的... NOI2007 社交网络 最短路 货币兑换 斜率优化动态规划 项链工厂 线段树 生成树计数 ...
- bzoj 1061~1065【Noi2008】解题报告
这次Noi好像格外喜欢树形DpQAQ P.S.好像这次的题都与图有关QAQ bzoj1061[Noi2008]志愿者招募:上下界可行最小费用流 bzoj1062[Noi2008]糖果雨:数形结合&am ...
- RQNOJ 569 Milking Time:dp & 线段问题
题目链接:https://www.rqnoj.cn/problem/569 题意: 在一个数轴上可以摆M个线段,每个线段的起始终止端点给定(为整数),且每个线段有一个分值,问如何从中选取一些线段使得任 ...
- RQNOJ 328 炮兵阵地:状压dp
题目链接:https://www.rqnoj.cn/problem/328 题意: 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队. 一个N*M的地图由N行M列组成(N≤100,M≤10), ...
- RQNOJ 311 [NOIP2000]乘积最大:划分型dp
题目链接:https://www.rqnoj.cn/problem/311 题意: 给你一个长度为n的数字,用t个乘号分开,问你分开后乘积最大为多少.(6<=n<=40,1<=k&l ...
随机推荐
- CoreOS中随着系统启动Docker Container
Start containers automatically https://docs.docker.com/engine/admin/host_integration/ https://www.fr ...
- 如何使用Inno Setup Compiler制作安装软件包
工具/原料 Inno Setup Compiler汉化版软件 方法/步骤 启动Inno Setup Compiler汉化版软件. 选择创建新的空白脚本文件,按确定. 然后按下一步. ...
- PyQt5点击按钮产生新窗体
import sys from PyQt5.QtWidgets import QApplication,QWidget from form1 import Ui_Form1 from form2 im ...
- EditText属性描述
android:layout_gravity="center_vertical"//设置控件显示的位置:默认top,这里居中显示,还有bottom android:hint=&qu ...
- JSP内置对象——application对象和out对象
1.application 对象application用于保存所有应用程序的公有数据.它在服务器启动时自动创建,在服务器停止时销毁. 当application对象没有被销毁时,所有用户都可以共享该ap ...
- Shiro的鉴权方式
一. 怎么用 Shiro 支持三种方式的授权 编程式:通过写 if/else 授权代码块完成: Subject subject = SecurityUtils.getSubject(); if(sub ...
- CodeForces 1065E. Side Transmutations 计数
昨天不该早点走的.... 首先操作限制实际上是一个回文限制 每个$b[i] - b[i - 1]$互不干扰,不妨设这个串关于中心点对称的这么一对区间的串分别为$(S_1, S_2)$ 题目的限制相当与 ...
- [BZOJ4784][ZJOI2017]仙人掌(树形DP)
4784: [Zjoi2017]仙人掌 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 312 Solved: 181[Submit][Status] ...
- [SimpleOJ236]暴风雨
题目大意: 给你一棵n个点的树,以及m+q条信息. m条描述点a到b有边直接相连. q条描述点a和点b的LCA为c. 问有多少符合条件的以1为根的树. 思路: 状压DP. e[i]记录需要与点i直接相 ...
- [bzoj1023][SHOI2008]cactus 仙人掌图 (动态规划)
Description 如果某个无向连通图的任意一条边至多只出现在一条简单回路(simple cycle)里,我们就称这张图为仙人图(cactus).所谓简单回路就是指在图上不重复经过任何一个顶点的回 ...