BZOJ 1911 特别行动队

裸的斜率优化,去年的APIO怎么有此等水题。

//By YY_More
#include<cstdio>
struct point{long long x,y;
} now,D[1000010];
long long sum[1000010];
int L,R,n,a,b,c;
inline long long xmul(point p,point q,point s){return (q.x-p.x)*(s.y-p.y)-(q.y-p.y)*(s.x-p.x);
}
int main(){scanf("%d",&n);scanf("%d%d%d",&a,&b,&c);for (int i=1;i<=n;i++){scanf("%d",&sum[i]);sum[i]+=sum[i-1];}    L=R=0;D[0].x=0;D[0].y=0;for (int i=1;i<=n;i++){while (L<R&&D[L].y-(2*a*sum[i]+b)*D[L].x<=D[L+1].y-(2*a*sum[i]+b)*D[L+1].x) L++;now.x=sum[i];now.y=D[L].y-(2*a*sum[i]+b)*D[L].x+2*a*sum[i]*sum[i]+b*sum[i]+c;while (L<R&&xmul(D[R-1],D[R],now)>=0) R--;D[++R]=now;}printf("%lld\n",D[R].y-a*sum[n]*sum[n]);return 0;
}

posted on 2011-07-30 20:30 YY_More 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/yymore/archive/2011/07/30/2122170.html

BZOJ 1911 特别行动队相关推荐

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

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

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

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

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

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

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

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

  5. BZOJ 1911 (APIO 2010) 特别行动队

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

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

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

  7. bzoj1911【APIO2010】特别行动队

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

  8. BZOJ1911 特别行动队

    目录 BZOJ1911 特别行动队 题解 code BZOJ1911 特别行动队 题目传送门 题解 典型的斜率优化\(Dp\).首先如果我们记\(sum[i]\)表示前\(i\)个士兵的战斗力之和,那 ...

  9. [APIO2010]特别行动队

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

最新文章

  1. LeNet5,AlexNet,MobileNet它们的前身你知道吗?
  2. 高清重制版阿波罗11号录像,英伟达RTX还原50年前登月细节
  3. 数据中心UPS电池故障引起火灾导致澳大利亚医院系统业务中断
  4. Mongodb数据查询 | Mongodb
  5. Maven 强制导入jar包
  6. 为什么 ASP.NET Core WebAPI 继承 ControllerBase 而不是 Controller ?
  7. 如何输入一个整数逆序输出_如何理解运算放大器的共模输入和输出摆幅限制?...
  8. aspen吸收塔气液比优化_Aspen吸收塔的设计
  9. 权威解读 GitHub、Apache 疑云:主流开源软件究竟是否会被闭源?| CSDN 独家
  10. js基础知识汇总12
  11. 黑色精美大气DJ音乐歌曲网站源码+带WAP手机端
  12. django开发个人博客系统
  13. 最适合Java程序员的Java学习全套资料分享
  14. 使用playsound播放音频(python)
  15. php getimagesize 导致系统变慢
  16. jasypt加密敏感配置信息出现Encryption raised an exception
  17. 【开关电源原理及选型介绍】
  18. 跨专业保研浙大计算机,保研经验:排名第一,论文两篇,七项专利,两个国家级大创,夏令营斩获多个offer,成功上岸985!...
  19. java英语 随时保存
  20. 码农+码农=码农 ?

热门文章

  1. Android模拟器问题记录
  2. 2020年中国大学排名出炉!你报考的大学排第几?(软科)
  3. 架构、框架侃侃而谈算法望而却步?吃透这份笔记轻松掌握算法技能
  4. 基于单片机的智能心率体温检测系统设计
  5. java的课程总结报告_java课程总结
  6. 联合国发布全球山脉分布数据
  7. verilog 中文件输入/输出任务(转)(注:在modelsim里面仿真)
  8. 链接orientdb的图形数据库_OrientDB数据库(ruby语言操作)
  9. windows验证redis/RabbitMQ安装是否成功
  10. Flex中label换行