APIO2010 特别行动队
https://www.luogu.org/problem/show?pid=3628 特别行动队
可以说是斜率优化dp的模板题,50分的方程很容易写出,先推导函数然后用单调队列维护上凸壳。
代码:
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N = 1000005;
int q[2*N], a, b, c; LL f[N], s[N];
double cal (int x, int y) {LL sdt = (LL)s[y]*s[y]-s[x]*s[x]; LL dt = (LL)s[y]-s[x];LL dty = (LL)f[y]-f[x]+a*sdt-b*dt; LL dtx = (LL)2*a*dt;return 1.0*dty/dtx;
}
int main () {int n, x, l = 0, r = 0;scanf ("%d%d%d%d", &n, &a, &b, &c);for (int i = 1; i <= n; ++ i) {scanf ("%d", &x); s[i] = s[i-1]+x;}for (int i = 1; i <= n; ++ i) {while (l<r && cal (q[l], q[l+1])<s[i]) ++l;LL dt = (LL)s[i]-s[q[l]]; LL dts = (LL)dt*dt;f[i] = (LL)f[q[l]]+a*dts+b*dt+c;while (l<r && cal (q[r-1], q[r])>cal (q[r], i)) --r;q[++r] = i;} printf ("%lld\n", f[n]);return 0;
}
APIO2010 特别行动队相关推荐
- 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, ...
- 洛谷 P3628 [APIO2010]特别行动队
题目描述 你有一支由 n 名预备役士兵组成的部队,士兵从 1 到 n 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑,同一支特别行动队中队员的编号 应该连续,即为形如的序列. 编号为 i ...
最新文章
- java中的类加载器有,Java自定义的类加载器,java自定义加载,在java中类加载器有以...
- Forrester:建立企业数据库安全计划
- Python第三方库的安装及路径查看总结
- rk3128屏幕占空比参数设置_瑞芯微RK3128芯片怎么样 性能全面解读
- Coolite ComboBox绑定方式
- HoloLens 2开发:Pcx 渲染点云单眼显示问题
- 大巴山计算机教育中心那所学校,大巴山计算机教育中心
- 搭载Apple芯片的Mac如何使用macOS恢复?
- win下装django
- bzoj4987 Tree 分类讨论+树形背包
- 历数OpenMobile开发的一些坑
- 不定宽高,实现盒子左右垂直居中
- 手机端上传照片实现 压缩、拖放、缩放、裁剪、合成拼图等功能
- 什么是SEO优化-SEO优化工具-SEO优化软件
- Android连接WiFi再探索
- 「算法与数据结构」从入门到进阶吐血整理推荐书单
- linux上php读取和创建word文档
- snort安装--daq,dnet---ERROR! dnet header not found, go get it from...等错误解决方案
- 1727: Dungeon Master
- Dism磁盘清理工具(文件大小2M)
热门文章
- 鸿蒙30支持哪些手机,鸿蒙2.0支持哪些手机-鸿蒙2.0首批升级名单
- phantomjs 抓取html,phantomjs抓取完整网页
- [js高手之路] dom常用API【appendChild,insertBefore,removeChild,replaceChild,cloneNode】详解与应用...
- 小职员年终领悟:职场要受宠 做事需揣摩老板心
- 将Mysql数据库脚本批量导入数据库
- Android Vibrator 框架总结
- 深度长文|详解现象级ChatGPT发展历程、原理、技术架构详解和产业未来
- verilog 中文件输入/输出任务(转)(注:在modelsim里面仿真)
- c语言学生成绩统计课设流程图,C语言课程设计————写下流程图! 谢谢
- 读取EXCEL。POI的一个死坑。。文件的流不能close以及删除