[wqs二分 DP] Codeforcces 739E. Gosha is hunting
来源:互联网 发布:大数据概念股龙头股票 编辑:程序博客网 时间:2024/06/01 09:52
看CF上的博客吧
#include <cstdio>#include <iostream>#include <algorithm>#define fi first#define se secondusing namespace std;const int N=100010;int n,x,y;double a[N],b[N];inline pair<int,int> solve(double cst1,double cst2){ int cnt1=0,cnt2=0; for(int i=1;i<=n;i++){ int add1=0,add2=0; double cur=0; if(a[i]-cst1>cur) cur=a[i]-cst1,add1=1,add2=0; if(b[i]-cst2>cur) cur=b[i]-cst2,add1=0,add2=1; if(1-(1-a[i])*(1-b[i])-cst1-cst2>cur) add1=1,add2=1; cnt1+=add1,cnt2+=add2; } return make_pair(cnt1,cnt2);}int main(){ while(~scanf("%d%d%d",&n,&x,&y)){ for(int i=1;i<=n;i++) scanf("%lf",&a[i]); for(int i=1;i<=n;i++) scanf("%lf",&b[i]); double l=-1,r=2,mid,cst1,cst2; while(r-l>1e-7){ mid=(l+r)/2; double L=-1,R=2,MID; int cur; while(R-L>1e-7){ pair<int,int> Q=solve(mid,MID=(L+R)/2); if(Q.se<=y){ cur=Q.fi; R=MID; } else L=MID; } if(cur<=x){ cst1=mid; cst2=R; r=mid; } else l=mid; } double ans=0; int cnt1=0,cnt2=0; for(int i=1;i<=n;i++){ int add1=0,add2=0; double cur=0; if(a[i]-cst1>cur) cur=a[i]-cst1,add1=1,add2=0; if(b[i]-cst2>cur) cur=b[i]-cst2,add1=0,add2=1; if(1-(1-a[i])*(1-b[i])-cst1-cst2>cur) cur=1-(1-a[i])*(1-b[i])-cst1-cst2,add1=1,add2=1; cnt1+=add1,cnt2+=add2; ans+=cur; } printf("%.5lf\n",ans+x*cst1+y*cst2); } return 0;}
阅读全文
0 0
- [wqs二分 DP] Codeforcces 739E. Gosha is hunting
- [WQS二分套WQS二分] Codeforces #739E. Gosha is hunting
- CodeForces 739E Gosha is hunting
- 【暴力/网络流】[Codeforces - 739E]Gosha is hunting
- 【Codeforces 739E】 Gosha is hunting【费用流】
- codeforces739E. Gosha is hunting
- [wqs二分 DP] POJ1160. Post Office
- [WQS二分] BZOJ2654:tree
- WQS二分——学习笔记
- hdu3468 Treasure Hunting 二分匹配
- Codeforces 743E(二分+状压dp)
- Codeforcces 478D Red-Green Towers【dp】好题!
- hdu 3641 - Treasure Hunting(筛素数+二分)
- hdu3468 Treasure Hunting(二分图)
- 解题报告:HDU3641Treasure Hunting 二分+勒让德定理
- Hunting
- Codeforces Round #277.5 (Div. 2) E. Hiking(二分 DP)
- codeforces 489e Hiking dp+01分数规划+二分
- 生日蛋糕 POJ
- eslint外部this和function中的this
- VS编写日志文件
- QT 5.1.1 串口类使用过程中出现报文插入现象的原因及解决方案
- 在开发iOS程序时,有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理。 例如: //实例化一个NSDateFormatter对象 NSDateFor
- [wqs二分 DP] Codeforcces 739E. Gosha is hunting
- JavaScript 事件
- 手把手教你用Qt制作和使用自己制作的静态库
- Visual studio 2017+Kinect2.0+opencv3.2.0 配置
- spring
- C# 命名空间(NameSpace)
- 51Nod 1087 1 10 100 1000
- Java配置环境变量
- fdisk partition volume example