1911: [Apio2010]特别行动队

Time Limit: 4 Sec   Memory Limit: 64 MB
Submit: 3600   Solved: 1651
[ Submit][ Status][ Discuss]

Description

Input

Output

Sample Input

4
-1 10 -20
2 2 3 4

Sample Output

9

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】特别行动队相关推荐

  1. bzoj1911 [Apio2010]特别行动队

    Description 你有一支由 n 名预备役士兵组成的部队,士兵从 1 到 n 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号 应该连续,即为形如(i, ...

  2. [BZOJ1911] [Apio2010]特别行动队

    传送门 http://www.lydsy.com/JudgeOnline/problem.php?id=1911 题目大意 把连续的人分组,每组[j,k]的价值为a(∑ki=jx[i])2+b∑ki= ...

  3. bzoj 1911: [Apio2010]特别行动队 -- 斜率优化

    1911: [Apio2010]特别行动队 Time Limit: 4 Sec  Memory Limit: 64 MB Description Input Output Sample Input 4 ...

  4. bzoj 1911: [Apio2010]特别行动队 2011-12-26

    1911: [Apio2010]特别行动队 Time Limit: 4 Sec  Memory Limit: 64 MB Submit: 892  Solved: 359 [Submit][Statu ...

  5. BZOJ 1911: [Apio2010]特别行动队 [斜率优化DP]

    1911: [Apio2010]特别行动队 Time Limit: 4 Sec  Memory Limit: 64 MB Submit: 4142  Solved: 1964 [Submit][Sta ...

  6. 1911: [Apio2010]特别行动队

    1911: [Apio2010]特别行动队 Time Limit: 4 Sec  Memory Limit: 64 MB Submit: 4061  Solved: 1922 [Submit][Sta ...

  7. [BZOJ] 1911 [Apio2010]特别行动队

    题目描述 你有一支由 n 名预备役士兵组成的部队,士兵从 1 到 n 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号 应该连续,即为形如 (i, i + 1 ...

  8. [APIO2010]特别行动队

    题面在这里 题意 你有一支由\(n\)名预备役士兵组成的部队,士兵从\(1\)到\(n\)编号,要将他们拆分 成若干特别行动队调入战场. 出于默契的考虑,同一支特别行动队中队员的编号应该连续,即为形如 ...

  9. [APIO2010] 特别行动队

    题目描述 你有一支由n名预备役士兵组成的部队,士兵从1到n编号,要将他们拆分成若干特别行动队调入战场.出于默契考虑,同一支特别行动队中队员的编号应该连续,即为形如(i,i+1,-,i+k)的序列. 编 ...

  10. 【斜率优化】[APIO2010]特别行动队

    题目 题目描述 你有一支由 nn 名预备役士兵组成的部队,士兵从 11 到 nn 编号,你要将他们拆分成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号应该连续,即为形如 (i, ...

最新文章

  1. socket io与vue-cli的结合使用
  2. boost使用学习总结
  3. linux 网络编程学习
  4. 大厂门槛:技术力+领导力,你达标了吗?
  5. 我看Slashdot
  6. 离线语音识别_离线语音识别库_离线语音识别sdk - 云+社区 - 腾讯云
  7. 苹果Mac知识大纲管理神器:OmniOutLiner
  8. 服务器系统开机密码怎么关闭,windows server2012怎么去除开机密码
  9. MOOS-ivp 实验五 MOOS编程进阶(2)
  10. java大马后门_【猥琐流】制作一个隐藏在黑页下的大马并且添加后门
  11. 太乐地图下载器 V5.0.5 破解版
  12. android 24节气及节日,iOS -- 获取24节气和节日
  13. 系统克隆 机械硬盘无缝迁移到ssd
  14. 用cd 命令进入和退出D盘文件夹的操作步骤。
  15. 面对困惑,职场之路该怎么走(附案例)---职场达人的忠告(转)
  16. 数“聚”价值 正逢其时 | 首席数字官CDO在线启动
  17. STP生成树详解_01
  18. 使用openssl 生成RSA、SM2、ECC的P12证书的方法
  19. 在mfc的图形控件嵌入opencv的图形窗口
  20. java 手机号码生成_用R语言和java实现随机生成手机号码

热门文章

  1. Python基础之告警定义与告警抑制
  2. java不支持类型_java泛型为什么不支持原始类型?
  3. 多传感器融合track fusion
  4. face_recognition IndexError: list index out of range
  5. 必备软件(电脑、手机),自用持续更新
  6. UKF滤波的简单理解与仿真
  7. 环信携手华为云助企纾困数字化发展
  8. Xshell如何连接虚拟机
  9. weblogic系列漏洞整理————8、WebLogic 两处任意文件上传漏洞动态分析(CVE-2018-2894)
  10. 两个路由器如何构建局域网