博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces 768D:Jon and Orbs
阅读量:5766 次
发布时间:2019-06-18

本文共 834 字,大约阅读时间需要 2 分钟。

Codeforces 768D:Jon and Orbs

题目链接:

题目大意:共有k种蛋,每天随机孵化其中一个,每次query每种蛋都至少有一个的概率>pi/2000需要多少天,一共询问q次。

概率dp

定义状态:dp[第i天][已孵化j种蛋]为改装状态下的概率;

状态转移方程:dp[i][j]=[1-(j-1)/k]*dp[i-1][j-1]+(j/k)*dp[i-1][j];

/*需要注意的是dp[i][0]=0,其中i>1*/

我们可以离线处理所有询问(按pi升序排列),再恢复原排列输出,已达到询问总复杂度O(nlgn),

观察到1≤pi≤1000,故亦可以保存对应pi=1 to 1000的ans,达到询问总复杂度O(n).

代码如下:

1 #include 
2 #include
3 #include
4 #define N 1005 5 using namespace std; 6 int n,k,q,ans[N],p; 7 double dp[10*N][N]; 8 int main(void){ 9 scanf("%d%d",&n,&q);10 dp[0][0]=1;11 for(int i=1;i<10*N;++i){12 dp[i][0]=0;13 for(int j=1;j<=n;++j)14 dp[i][j]=(dp[i-1][j-1]*(n-j+1)+dp[i-1][j]*j)/n;15 }16 for(int i=1;i<=1000;++i){17 while(dp[k][n]*2000

 

转载于:https://www.cnblogs.com/barrier/p/6426525.html

你可能感兴趣的文章
Linux 下 svn 命令详解
查看>>
Android网络请求框架之Retrofit实践
查看>>
Drozer – Android APP安全评估工具(附测试案例)
查看>>
MySQL和Java数据类型对应
查看>>
内存管理2(主讲MRR)
查看>>
Windows App开发之文件与数据
查看>>
fence_vmware usage with ESX or VCenter, or VSphere ... vmware product
查看>>
Struts2框架学习之四:OGNL表达式
查看>>
LeetCode 38 Count and Say(计数与报数)
查看>>
graphviz dot初探
查看>>
[面试经]字节对齐
查看>>
人工智能战斗系统ALPHA:打败美国空军上校
查看>>
锁住余额,为何还会更新异常?
查看>>
薅羊毛: 微信小程序开发者可以免费使用验证码短信服务了!
查看>>
数据结构基础学习之(图)
查看>>
大型互联网b2b b2c o2o电子商务云平台
查看>>
React + Antd + Redux改进之前简单的todolist
查看>>
koa2学习笔记(三)async/await
查看>>
杉车大数据:30万的入门级跑车,我选日系
查看>>
成功微服务实施的组织演进
查看>>