bzoj1911【APIO2010】特别行动队
1911: [Apio2010]特别行动队
Time Limit: 4 Sec Memory Limit: 64 MB
Submit: 3600 Solved: 1651
[ Submit][ Status][ Discuss]
Description
Input
Output
Sample Input
-1 10 -20
2 2 3 4
Sample Output
HINT
Source
斜率优化DP
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#define F(i,j,n) for(int i=j;i<=n;i++)
#define D(i,j,n) for(int i=j;i>=n;i--)
#define ll long long
#define maxn 1000005
using namespace std;
int n,l,r;
ll a,b,c,q[maxn],f[maxn],s[maxn];
inline int read()
{int x=0,f=1;char ch=getchar();while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}while (ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}return x*f;
}
inline double getk(int x,int y)
{return (double)((f[x]+a*s[x]*s[x]-b*s[x])-(f[y]+a*s[y]*s[y]-b*s[y]))/(double)(s[x]-s[y]);
}
int main()
{n=read();a=read();b=read();c=read();F(i,1,n) s[i]=s[i-1]+read();l=r=1;q[1]=0;F(i,1,n){while (l<r&&getk(q[l],q[l+1])>a*s[i]*2) l++;f[i]=f[q[l]]+a*s[q[l]]*s[q[l]]-b*s[q[l]]-a*s[i]*s[q[l]]*2+a*s[i]*s[i]+b*s[i]+c;while (l<r&&getk(q[r-1],q[r])<getk(q[r],i)) r--;q[++r]=i;}printf("%lld\n",f[n]);return 0;
}
bzoj1911【APIO2010】特别行动队相关推荐
- bzoj1911 [Apio2010]特别行动队
Description 你有一支由 n 名预备役士兵组成的部队,士兵从 1 到 n 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号 应该连续,即为形如(i, ...
- [BZOJ1911] [Apio2010]特别行动队
传送门 http://www.lydsy.com/JudgeOnline/problem.php?id=1911 题目大意 把连续的人分组,每组[j,k]的价值为a(∑ki=jx[i])2+b∑ki= ...
- bzoj 1911: [Apio2010]特别行动队 -- 斜率优化
1911: [Apio2010]特别行动队 Time Limit: 4 Sec Memory Limit: 64 MB Description Input Output Sample Input 4 ...
- bzoj 1911: [Apio2010]特别行动队 2011-12-26
1911: [Apio2010]特别行动队 Time Limit: 4 Sec Memory Limit: 64 MB Submit: 892 Solved: 359 [Submit][Statu ...
- BZOJ 1911: [Apio2010]特别行动队 [斜率优化DP]
1911: [Apio2010]特别行动队 Time Limit: 4 Sec Memory Limit: 64 MB Submit: 4142 Solved: 1964 [Submit][Sta ...
- 1911: [Apio2010]特别行动队
1911: [Apio2010]特别行动队 Time Limit: 4 Sec Memory Limit: 64 MB Submit: 4061 Solved: 1922 [Submit][Sta ...
- [BZOJ] 1911 [Apio2010]特别行动队
题目描述 你有一支由 n 名预备役士兵组成的部队,士兵从 1 到 n 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号 应该连续,即为形如 (i, i + 1 ...
- [APIO2010]特别行动队
题面在这里 题意 你有一支由\(n\)名预备役士兵组成的部队,士兵从\(1\)到\(n\)编号,要将他们拆分 成若干特别行动队调入战场. 出于默契的考虑,同一支特别行动队中队员的编号应该连续,即为形如 ...
- [APIO2010] 特别行动队
题目描述 你有一支由n名预备役士兵组成的部队,士兵从1到n编号,要将他们拆分成若干特别行动队调入战场.出于默契考虑,同一支特别行动队中队员的编号应该连续,即为形如(i,i+1,-,i+k)的序列. 编 ...
- 【斜率优化】[APIO2010]特别行动队
题目 题目描述 你有一支由 nn 名预备役士兵组成的部队,士兵从 11 到 nn 编号,你要将他们拆分成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号应该连续,即为形如 (i, ...
最新文章
- socket io与vue-cli的结合使用
- boost使用学习总结
- linux 网络编程学习
- 大厂门槛:技术力+领导力,你达标了吗?
- 我看Slashdot
- 离线语音识别_离线语音识别库_离线语音识别sdk - 云+社区 - 腾讯云
- 苹果Mac知识大纲管理神器:OmniOutLiner
- 服务器系统开机密码怎么关闭,windows server2012怎么去除开机密码
- MOOS-ivp 实验五 MOOS编程进阶(2)
- java大马后门_【猥琐流】制作一个隐藏在黑页下的大马并且添加后门
- 太乐地图下载器 V5.0.5 破解版
- android 24节气及节日,iOS -- 获取24节气和节日
- 系统克隆 机械硬盘无缝迁移到ssd
- 用cd 命令进入和退出D盘文件夹的操作步骤。
- 面对困惑,职场之路该怎么走(附案例)---职场达人的忠告(转)
- 数“聚”价值 正逢其时 | 首席数字官CDO在线启动
- STP生成树详解_01
- 使用openssl 生成RSA、SM2、ECC的P12证书的方法
- 在mfc的图形控件嵌入opencv的图形窗口
- java 手机号码生成_用R语言和java实现随机生成手机号码