2019ICPC(银川) - Take Your Seat(概率公式)
题目链接:点击查看
题目大意:朵哈要坐飞机去旅游,出发的时候包括朵哈在内一共有n个人要上飞机,这班飞机有n个座位,第i个人的座位号是i,朵哈的座位号是1。
现在n个人按照座位号是从1到n的顺序上飞机,但朵哈忘了自己的座位,于是她就等概率随机选了一个位置坐下了,而其余人都记得自己的位置,如果他们中的一个人上飞机之后发现自己的位置被占了,则会在剩下的位置中等概率随机选一个坐下,如果没被占,则会直接坐到自己的位置上。
你需要计算最后一个上飞机的人坐到了自己位置上的概率。
朵哈返程的时候,包括她在内的m个人会按照一个随机的座位号上飞机。
这班飞机有m个座位,朵哈的座位号还是1。但是朵哈又一次忘记了自己的座位,并且还是只有她忘记了自己的座位。现在所有人找座位的规则和出发时完全相同,朵哈或任何一个发现自己座位已经被占了的人会等概率随机选一个没被占的座位坐下。
你需要计算最后一个上飞机的人坐到了自己位置上的概率。
题目分析:
我们先来分析第一问,按照顺序上飞机,很容易知道,当n=1时,答案时1,当n=2时,答案是0.5,那么我们来分析一下n大于等于3的情况,我们设f(i)为飞机上一共有i个人时的概率
- 当朵哈坐在1号位,那么剩下n-1个人包括最后一个人在内,肯定都能坐到自己的位置,所以此时概率为1
- 当朵哈坐在n号位,那么第n个人最后上飞机,肯定坐不到自己的位置了,所以此时概率为0
- 当朵哈坐在第k号位,那么第2~k-1个人可以坐在自己的位置上,轮到第k个人时会开始随机坐,那么我们不妨将第k个人视为朵哈,将剩余的n-k个空位,视为新的n,以此类推,这样递推关系就很清晰了:f(n)=(1+f(2)+f(3)+……+f(n-2)+f(n-1))/n
其实自己在纸上画一画n=3和n=4的情况,应该一下子也能确定第一问的概率当n大于等于2时时恒等于0.5的了。。
接下来我们在第一问的基础上讨论第二问:
- 如果朵哈第1个上飞机,那么问题就转化成了求f(m)
- 如果朵哈第2个上飞机,因为第一个人肯定坐在了自己的位置上,那么就是求f(m-1)
- 如果朵哈第3个上飞机,因为前两个人肯定坐在了自己的位置上,那么就是求f(m-2)
- 如果朵哈第k个上飞机,因为前k-1个人肯定坐在了自己的座位上,那么就是求f(m-k+1)
- 如果朵哈最后一个上飞机,那概率肯定时1
又因为f(2)=f(3)=f(4)=……=f(n-1)=f(n)=0.5,
所以我们分两种情况即可:
- 如果朵哈最后一个上飞机,概率为1
- 如果朵哈不是最后一个上飞机,概率为0.5
而朵哈上飞机的顺序是随机的,所以朵哈最后一个上飞机的概率为1/m,所以第二问的公式也就推出来了:
f(m)=(1/m)*1+(m-1/m)*0.5=(m+1)/(2*m),n==1时也适用
上代码:
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<algorithm>
#include<stack>
#include<queue>
#include<map>
#include<cmath>
#include<set>
#include<sstream>
using namespace std;typedef long long LL;const int inf=0x3f3f3f3f;const int N=1e6+100;int main()
{
// freopen("input.txt","r",stdin);int w;cin>>w;int kase=0; while(w--){int n,m;scanf("%d%d",&n,&m);printf("Case #%d: ",++kase);if(n==1)printf("%.6f",1.0);elseprintf("%.6f",0.5);printf(" %.6f\n",((m+1)*1.0)/(2*m*1.0));}return 0;
}
2019ICPC(银川) - Take Your Seat(概率公式)相关推荐
- 估计中的概率公式总结
估计中的概率公式总结 0.引言 1.基本概念 2.贝叶斯公式 3.独立 4.条件联合分布 5.条件贝叶斯公式 6.马尔科夫 0.引言 近期遇到的概率公式,整理一下. 1.基本概念 条件概率 P(A∣B ...
- 计算机公式加法A C,概率公式c怎么计算
概率公式c计算方法:一般地,C(n,k)=n(n-1)(n-2)...(n-k+1)/k!,其中k≤n.例如,C(12,3)=12x11x10/3!=1320/(3x2x1)=1320/6=220. ...
- 概论_第2章_一维均匀分布的概率公式
均匀分布的概率计算有一个概率公式: 设X~U(a, b), a≤c<d≤b, 即 [c, d] ⊂ [a, b], 则 P{c≤X≤d} = 使用这个公式计算概率很方便, 例如, X~U(0, ...
- 概率论基础 —— 2. 条件概率、全概率、贝叶斯概率公式
文章目录 条件概率 全概率 贝叶斯概率 条件概率 条件概率是一种比较特殊的概率体系,和我们前面提到过的基本概率(交事件)有所不同.它最大的特点在于事件发生时有一定的限制前提,通常一般是说在事件A发生后 ...
- 数学-先验概率和后验概率和一系列概率公式理解
自用. 一. 先验概率和后验概率理解 这两个都是描述某个结论H发生的概率. 假如我当前什么证据都没有,就根据之前的人生经历,思索下说P(H)=0.99,认为结论H发生的可能高达99%,那这时的P(H) ...
- 概率论与数理统计【二】随机事件与概率(2) - 常用求概率公式与例题两道
本节为概率论与数理统计复习笔记的第二节,随机事件与概率(2),主要包括:加法公式.减法公式.条件概率公式.乘法公式.全概率公式.贝叶斯公式以及两道例题. 1.常用的求概率公式 1.加法公式 P(A∪B ...
- 如何理解贝叶斯概率公式的先验、后验以及似然
贝叶斯概率公式最简单的情况: P(A|B)=P(B|A)*P(A)/P(B) 关于如何理解/ 记住贝叶斯公式里的先验.后验以及似然.有一个关于编译器的巧妙的例子: 假设今天Alice结束了漫长的期末复 ...
- 全概率公式和逆概率公式(贝叶斯公式)
1.全概率公式和逆概率公式 1.1 全概率公式 A1.A2.⋯.AnA_1.A_2.\cdots.A_nA1.A2.⋯.An是样本空间 Ω\OmegaΩ 的一个完备事件组,且P(Ai)>0 ...
- PT_基本概率公式(减法/加法/乘法/除法(条件概率)/全概率/贝叶斯)@条件概率链式法则@乘法法则
文章目录 ref 概率公理 条件概率和样本空间 五大公式
最新文章
- war包部署到tomcat的疑问
- Holedox Moving
- binlog数据库不写入binlog_京东智联云MySQL数据库如何保障数据的可靠性?
- 信息学奥赛C++语言: 螺旋方阵1
- GoLand 快速入门教程
- NAT with same subnetwork
- android 图片合成pdf文件,教你怎么把多张图片合成一个pdf文件
- 深度学习算法:AlphaGo 算法
- 微博简单的免登陆获取
- VirtualBox中出现“0x00000000指令引用的0x00000000内存该内存不能为written 和visual studio Just in time debugger error
- 美国留学访学(访问学者)必备信用卡
- rx590 黑苹果 无货_国考报名过审人数超85万,苹果iPhone 12开售排队
- 访问局域网另外一台电脑虚拟机中CentOS7
- 奶茶自由让人上头,95后为何钟爱这一杯甜蜜疗愈?
- LeetCode——11. 盛最多水的容器
- Pillow库的用法
- 魔幻绘画风之不死魔女-张聪-专题视频课程
- 全网最全pytest大型攻略,单元测试学这就够了
- 【转】国内手机上网站点大测试
- 利用SW插件导出urdf文件