BZOJ 1911 特别行动队(斜率优化dp)
来源:互联网 发布:怎么查手机的网络制式 编辑:程序博客网 时间:2024/05/07 01:06
题目链接
http://www.lydsy.com/JudgeOnline/problem.php?id=1911
#include<cstdio>#include<cstring>#include<iostream>#include<queue>using namespace std;#define maxn (1000000+10)int N,A,B,C;int q[maxn];long long sum[maxn],dp[maxn];void input(){scanf("%d",&N);scanf("%d%d%d",&A,&B,&C);for(int i=1;i<=N;i++){scanf("%lld",&sum[i]);sum[i]+=sum[i-1];}}long long up(int a,int b){return dp[b]-dp[a]+A*(sum[b]*sum[b]-sum[a]*sum[a])+B*(sum[a]-sum[b]);}long long down(int a,int b){return 2*A*(sum[b]-sum[a]);}void solve(){int head=0,tail=0;q[tail++]=0;for(int i=1;i<=N;i++){while(head<tail-1&&up(q[head],q[head+1])>=sum[i]*down(q[head],q[head+1]))head++;int L=q[head];dp[i]=dp[L]+A*(sum[i]-sum[L])*(sum[i]-sum[L])+B*(sum[i]-sum[L])+C;while(head<tail-1&&up(q[tail-1],i)*down(q[tail-2],q[tail-1])<=up(q[tail-2],q[tail-1])*down(q[tail-1],i))tail--;q[tail++]=i;}cout<<dp[N];}int main(){input();solve();return 0;}
0 0
- BZOJ 1911 特别行动队(斜率优化dp)
- 【bzoj 1911】 [Apio2010]特别行动队(斜率优化dp)
- bzoj 1911 [Apio2010]特别行动队(斜率优化+DP)
- BZOJ 1911-特别行动队(DP+斜率优化)
- BZOJ 1911 APIO 2010 特别行动队 斜率优化DP
- bzoj 1911 [Apio2010]特别行动队斜率优化+DP
- [BZOJ 1911][Apio2010]特别行动队:DP斜率优化
- BZOJ 1911 [Apio2010]特别行动队 (斜率优化DP)
- [斜率DP优化]BZOJ 1911: [Apio2010]特别行动队 题解
- BZOJ 1911: [Apio2010]特别行动队 [斜率优化dp]
- 【斜率DP】BZOJ 1911:特别行动队
- bzoj 1911 特别行动队 斜率优化
- bzoj 1911: [Apio2010]特别行动队(斜率优化)
- [省选前题目整理][BZOJ 1911][APIO 2010]特别行动队(斜率优化DP)
- 【bzoj 1911】【Apio2010】特别行动队 dp+单调队列斜率优化
- BZOJ 1911([Apio2010]特别行动队-斜率优化第一题)
- bzoj 1911: [Apio2010]特别行动队 动态规划+斜率优化
- BZOJ 1911: [Apio2010]特别行动队(斜率优化)
- openstack网络模式
- Java IO开销测试比较
- HDU 5172 - GTY's gay friends (线段树)
- vs2010 调用opencv 时报错 msvcr90.dll exception
- 我早年在Google学到的10条经验
- BZOJ 1911 特别行动队(斜率优化dp)
- linux 查看系统版本
- 对UTF-8和GB2312格式 URL进行解码
- hdu2059--龟兔赛跑(dp)
- 第40天: UDAF函数 A 的意思 aggregation 聚集
- 「数字信号处理」课程设计--练习题
- 【Objective-C】13-类和方法的本质
- HDU -- 4786 Fibonacci Tree (mst)
- dramsim2地址映射