3316: JC loves Mkk 二分答案+单调队列
来源:互联网 发布:java写的毕业设计 编辑:程序博客网 时间:2024/05/21 06:40
…平均数最大我居然不知道要二分答案,似乎是很常见的思路?我好弱。
每次二分一个答案
#include<iostream>#include<cstdio>#define eps 1e-7#define N 200005using namespace std;long double sum[N];int a[N];int n,L,R,mx;int Q[2][N],l[2],r[2];long long ans;inline int read(){ int a=0,f=1; char c=getchar(); while (c<'0'||c>'9') {if (c=='-') f=-1; c=getchar();} while (c>='0'&&c<='9') {a=a*10+c-'0'; c=getchar();} return a*f;}long long gcd(long long a,long long b){ return b==0?a:gcd(b,a%b);}bool judge(long double y){ for (int i=1;i<=n;i++) sum[i]=sum[i-1]+a[i]-y; l[0]=l[1]=1; r[0]=r[1]=0; for (int i=L;i<=n;i++) { int w=i&1,x=i-L; int *q=Q[w]; while (r[w]>=l[w]&&sum[x]<sum[q[r[w]]]) r[w]--; while (r[w]>=l[w]&&q[l[w]]<i-R) l[w]++; q[++r[w]]=x; if (sum[i]-sum[q[l[w]]]>=0) return ans=i-q[l[w]]; } return false;}int main(){ n=read(); L=read(); R=read(); if (L&1) L++; if (R&1) R--; for (int i=1;i<=n;i++) { a[i]=read(); mx=max(a[i],mx); a[i+n]=a[i]; } n<<=1; long double l=0,r=mx; while (r-l>=eps) { long double mid=(l+r)/2; if (judge(mid)) l=mid; else r=mid; } long double x=(l+r)/2; long long w=(long long)(ans*x+0.5); long long d=gcd(w,ans); w/=d; ans/=d; if (ans==1) cout << w; else cout << w << "/" << ans; return 0;}
1 0
- BZOJ 3316 JC loves Mkk 二分答案+单调队列
- BZOJ 3316: JC loves Mkk|单调队列|二分答案
- 3316: JC loves Mkk 二分答案+单调队列
- [二分答案 单调队列] BZOJ 3316 JC loves Mkk
- 【bzoj3316】 JC loves Mkk 单调队列+二分答案
- 【bzoj3316】【JC loves MKK】【单调队列+二分答案】
- bzoj3316 jc loves mkk 二分&单调队列
- [BZOJ]3316: JC loves Mkk 二分+单调队列
- bzoj 3316: JC loves Mkk(二分+单调队列)
- 单调队列 JC loves Mkk
- 3316: JC loves Mkk
- bzoj 3316 JC loves Mkk
- BZOJ 3316: JC loves Mkk
- BZOJ3316 JC loves Mkk
- bzoj3316: JC loves Mkk
- BZOJ3316: JC loves Mkk
- bzoj3316: JC loves Mkk
- 2017.9.7 JC loves Mkk 失败总结
- SVN客户端操作
- linux 重定向命令
- 15电气 齐振昊 实验名称:在VB中制作计时器
- #leetcode#292 Nim Game
- STL双端队列 deque
- 3316: JC loves Mkk 二分答案+单调队列
- 第三个MapReduce程序----倒排索引inverseindex
- typeof 和 instanceof 的区别
- MyEclipse快捷键大全(转自豆瓣)
- 浅谈web应用的负载均衡、集群、高可用(HA)解决方案
- 先序构建二叉树_preorder
- ffmpeg在ubuntu和Qt下的安装及配置例程
- PCA主成分分析法入门
- MyEclipse快捷键大全(转自博客园)