Fireworks

题意:

你每做一个烟花要n分钟,释放已做好的所有烟花需要m分钟,每只烟花成功释放的概率为p。问你在采取最优策略的前提下,直到成功释放第一个烟花时最小的期望时间花费。

题解:

最佳策略是:每次集中做法,然后集中释放。所以我们设每制作k个烟花后集中释放一次,直到某次释放时成功出现一次为止。求当前期望时间花费,这是一个典型的几何分布
每轮的时间开销为:T = k * n + m,每轮至少成功释放烟花的概率为P,P怎么求?一次都不成功的概率为(1 - p)k,那么P=1-(1-p)k,根据几何分布公式期望为E = 1/P,乘以每轮开销的期望时间花费为T * E
这是一个单峰的凹函数,通过三分找答案

代码:

#include<bits/stdc++.h>
#define debug(a,b) printf("%s = %d\n",a,b);
typedef long long ll;
using namespace std;inline int read(){int s=0,w=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();//s=(s<<3)+(s<<1)+(ch^48);return s*w;
}
long double fun(int k,int n,int m,long double p){return ((long double)k*n+m)/((long double)1.0-pow(1.0-p,k));
}
int main()
{int t;cin>>t;while(t--){int n,m;double p;cin>>n>>m>>p;p*=(1e-4);int l=1,r=0x3f3f3f3f;while(l<r){int mid1=l+(r-l)/3;int mid2=r-(r-l)/3;if(fun(mid1,n,m,p)<fun(mid2,n,m,p))r=mid2-1;else l=mid1+1;}printf("%.10Lf\n",fun(l,n,m,p));}
}

Fireworks(2020 ICPC南京)相关推荐

  1. 2020 ICPC 南京站 F Fireworks (概率论+三分)

    题目链接:F-Fireworks_第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京) 题目描述 Kotori is practicing making fireworks for the ...

  2. 2020 ICPC 南京 H Harmonious Rectangle (DFS剪枝+思维)

    题目链接H-Harmonious Rectangle_第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京) 题目描述 A vertex-colored rectangle is a rec ...

  3. 2020 ICPC 南京站 M Monster Hunter (树形DP)

    题目链接:M-Monster Hunter_第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京) 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5 ...

  4. 树形dp --- 2020 icpc 南京 M Monster Hunter

    题目链接 题目大意: 解题思路: 首先我们分析一下每个点状态是怎么? 1.1: 对于这个点我们删除的代价我们要看一下它儿子有多少个没被删除(指没用)因为父亲节点没删这个点呀删除不了 1.2: 那么这个 ...

  5. 2020 ICPC Macau A. Accelerator(期望,计数,分治FFT)(每日一题 21.7.6)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 2020 ICPC Macau A. Accelerator(分治FFT) Problem 给定长度为 ...

  6. 2020 ICPC NAC

    2020 ICPC NAC 题号 题目 知识点 难度 A Another Coin Weighing Puzzle B Mini Battleship C Bomas D All Kill E Gri ...

  7. 微型计算机 持续更新,2020年南京邮电大学810《微机原理及应用》硕士研究生入学考试大纲...

    国各省市院校2020年硕士研究生考试大纲汇总(持续更新中)>>> 2020年国硕士研究生入学考试命题标准大纲已于7月8日正式公布,接下来国各研招院校将陆续发布2020考研专业课大纲. ...

  8. The 2020 ICPC Asia Shenyang Regional Programming Contest I题 Rise of Shadows(数论)

    题目链接The 2020 ICPC Asia Shenyang Regional Programming Contest 题目大意: 一天内有H小时,每小时M分钟,时针分针以恒定速率旋转. 现在若时针 ...

  9. The 2020 ICPC Asia Yinchuan Regional Programming Contest

    The 2020 ICPC Asia Yinchuan Regional Programming Contest A 开三个vector数组存储x,y,z轴上的点,unique+erase去重 #in ...

最新文章

  1. ajax怎样获得表头信息,layui.table动态获取表头和列表数据示例
  2. Qt+OpenCV界面
  3. java调用matlab绘图
  4. Oracle中去重复记录 不用distinct
  5. 运行bat批处理文件不出现黑框
  6. 工作83:wacch的使用
  7. thinkpad卡在logo界面_四大系列 一个品牌,超好用的商务伴侣Thinkpad
  8. PS如何生成svg代码格式的path路径 - PS技巧篇
  9. python奇奇怪怪的特点
  10. (37)FPGA原语设计(BUFR)
  11. 疑似又一vivoX80新机通过3C质量认证:全系标配80W快充
  12. win10如何修改鼠标指针样式
  13. vue 利用科大讯飞实现实时语音转写
  14. 日常工作记录---在虚拟机中进行slam建图
  15. 详解 Word2vec 之 Skip-gram 模型
  16. 【数据库原理】函数依赖 平凡依赖 非平凡依赖 完全函数依赖 部分函数依赖 传递函数依赖
  17. 阿里轻量应用服务器搭建ftp服务器
  18. div html表格样式设置字体大小,css样式表中如何修改字体大小为18px?
  19. Java控制手机在同一网下_安卓手机控制另一手机的方法【详解】
  20. 如何理解一台服务器可以绑定多个ip,一个ip可以绑定多个域名

热门文章

  1. 一所传闻要被“降级”的211高校,让这位网红教授“救活了”
  2. 如何计算一只鸡的表面积?各大专业的奇葩解法
  3. 12星座程序员写代码
  4. python with循环_Python for循环、while循环
  5. python中线程和进程_python中线程和进程的简单了解
  6. mysql控制台教程视频教程_mysql 控制台操作
  7. 中connect怎么用_烘焙中的各种酒,到底该怎么用?
  8. python中可以表示任意大的整数_Python无法表示99999999999999999999这样大的整数。
  9. leetcote34. 在排序数组中查找元素的第一个和最后一个位置
  10. [蓝桥杯][历届试题]九宫重排-双向bfs和map标记