BZOJ1911【斜率优化】
来源:互联网 发布:mac游戏推荐 编辑:程序博客网 时间:2024/04/28 15:11
/* I will wait for you */ #include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<ctime>#include<algorithm>#include<iostream>#include<fstream>#include<vector>#include<queue>#include<deque>#include<set>#include<map>#include<string>#define make(a,b) make_pair(a,b)#define fi first#define se second using namespace std; typedef long long LL;typedef unsigned long long ULL;typedef pair<int,int> PII; const int maxn=1000010;const int maxm=1000010;const int maxs=26;const int INF=1<<29;const int P=1000000007;const double error=1e-9;LL a,b,c,x[maxn],q[maxn],f[maxn],h[maxn],s[maxn];LL F(LL x){return a*x*x+b*x+c;}LL A(int x,int y){return (h[x]-f[x]+2*a*s[x]*s[x])-(h[y]-f[y]+2*a*s[y]*s[y]);}LL B(int x,int y){return (2*a*s[x])-(2*a*s[y]);}int main(){int n;scanf("%d%lld%lld%lld",&n,&a,&b,&c);for(int i=1;i<=n;i++) scanf("%lld",&x[i]);for(int i=1;i<=n;i++) s[i]=s[i-1]+(LL)x[i],f[i]=F(s[i]);int he=0,ta=0;f[0]=c;for(int i=1,t;i<=n;i++){while(he<ta&&A(q[he],q[he+1])<=B(q[he],q[he+1])*s[i]) he++;t=q[he],h[i]=h[t]+F(s[i]-s[t]);while(he<ta&&A(q[ta-1],q[ta])*B(q[ta],i)>=A(q[ta],i)*B(q[ta-1],q[ta])) ta--;q[++ta]=i;}printf("%lld\n",h[n]);return 0;}
0 0
- BZOJ1911【斜率优化】
- BZOJ1911(斜率优化DP)
- bzoj1911 [ APIO2010 ] -- 斜率优化DP
- 【bzoj1911】【APIO2010】【特别行动队】【斜率优化】
- bzoj1911 特别行动队 斜率优化
- 【bzoj1911】特别行动队 斜率优化dp
- BZOJ1911 [Apio2010]特别行动队 斜率优化
- bzoj1911 [Apio2010]特别行动队(斜率优化)
- BZOJ1911 [Apio2010]特别行动队 【斜率优化】
- bzoj1911: [Apio2010]特别行动队 斜率优化DP
- [BZOJ1911]APIO2010特别行动队|斜率优化DP
- bzoj1911 特别行动队 动态规划斜率优化
- 【bzoj1911】[Apio2010]特别行动队 DP斜率优化
- 【BZOJ1911】【codevs1318】特别行动队,斜率优化DP
- [BZOJ1911][Apio2010]特别行动队(斜率优化dp)
- 【斜率优化】BZOJ1911(Apio2010)[特别行动队]题解
- 【斜率优化DP】BZOJ1911 [Apio2010]特别行动队
- bzoj1911: [Apio2010]特别行动队(斜率优化+Dp)
- Android客户端+JavaEE后台服务器端+Mysql数据库(社交app-心情驿站)
- UVa 208 - Firetruck
- Windows下FFmpeg调试
- I/O端口和IO内存
- linux ssh密钥登录
- BZOJ1911【斜率优化】
- 【C语言】自己编写程序实现strchr函数。即在给定字符串中找特定的字符并返回该处指针。
- Android_NFC_开发介绍
- RabbitMQ的安装与基本使用
- windows下启动服务的cmd命令
- javac不是内部或外部命令
- 欣向荣胶粘制品常州
- 测试用
- 对SingleTask和TaskAffinity的理解