251、飞机座位分配概率
题目描述:
有 n 位乘客即将登机,飞机正好有 n 个座位。第一位乘客的票丢了,他随便选了一个座位坐下。
剩下的乘客将会:
如果他们自己的座位还空着,就坐到自己的座位上,
当他们自己的座位被占用时,随机选择其他座位
第 n 位乘客坐在自己的座位上的概率是多少?
示例 1:
输入:n = 1
输出:1.00000
解释:第一个人只会坐在自己的位置上。
示例 2:
输入: n = 2
输出: 0.50000
解释:在第一个人选好座位坐下后,第二个人坐在自己的座位上的概率是 0.5。
提示:
1 <= n <= 10^5
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/airplane-seat-assignment-probability
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
emm头脑不够用
没想出来
1.动态规划
很容易想到,如果第一个人正好坐在自己的位置,那么之后所有的人都会坐在自己的位置。
如果第一个人正好坐在第n个人的位置,那么第n个人没可能坐在自己的位置。
如果第一个人坐在除了自己位置以及第n个人的位置之外的任何位置,情况就如同n-1个座位情况。
所以转移方程为: dp[i] = 1 / i + (i - 2) / i * dp[i - 1]
var nthPersonGetsNthSeat = function(n) {
let dp = [0, 1];
for(let i = 2;i <= n;i++) {
dp[i] = (1 / i) + (dp[i - 1] * (i - 2) / i);
}
return dp[n];
};
2.数学法
上式通过数学归纳法发现
当n = 1时,概率为1,
其他情况,概率为0.5。
var nthPersonGetsNthSeat = function(n) {
if(n == 1) {
return 1;
}
return 0.5;
};
作者:virginiadb-Y0WqAUJ773
链接:https://leetcode-cn.com/problems/airplane-seat-assignment-probability/solution/dong-tai-gui-hua-fa-he-shu-xue-fa-by-virginiadb-y0/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
这个解释的比较详细
251、飞机座位分配概率相关推荐
- Java实现 LeetCode 1227 飞机座位分配概率
1227. 飞机座位分配概率 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己 ...
- Leetcode-1227. 飞机座位分配概率
链接 1227. 飞机座位分配概率 题目 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, ...
- 【LeetCode】1227. 飞机座位分配概率
一.题目描述 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己的座位被占用时, ...
- LeetCode 1227. 飞机座位分配概率(DP+数学归纳法)
1. 题目 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己的座位被占用时,随 ...
- leetcode1227.飞机座位分配概率
1:题目描述 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己的座位被占用时, ...
- 1227 飞机座位分配概率
题目描述 : 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己的座位被占用时, ...
- 【数据结构与算法】之深入解析“飞机座位分配概率”的求解思路与算法示例
一.题目要求 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下,剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上: 当他们自己的座位被占用时,随 ...
- 【Java】LeetCode 1227. 飞机座位分配概率——数学好一行解决
有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己的座位被占用时,随机选择其他座 ...
- Leetcode 1227:飞机座位分配概率
题目描述 有 n 位乘客即将登机,飞机正好有 n 个座位.第一位乘客的票丢了,他随便选了一个座位坐下. 剩下的乘客将会: 如果他们自己的座位还空着,就坐到自己的座位上, 当他们自己的座位被占用时,随机 ...
最新文章
- range.clonecontents 不准确_家长注意!通州今起开展幼升小数据调查,不参加或影响明年入学...
- postman发送json请求,使用案例
- win10用一会就蓝屏重启_电脑出现蓝屏?教你如何解决
- kali linux 2019教程,[教程]KALI LINUX 2.0 2019 更新国内源
- 安卓工控主板运行时会自动重启_工控机日常维护的方法与步骤
- MySQL 性能方案
- Python机器人-最简单的机器人答复
- aac,ogg等音频测试文件下载地址
- 开发板上rmmod卸载驱动的时候,常见的错误总结
- Sqoop基于时间列的增量数据之LastModified方式
- Nature Microbiology | 王璋/陈荣昌/周宏伟-慢阻肺病呼吸道菌群-宿主互作机制
- 深度学习图片分类实战学习
- 正压控制单元KA5000F/风机节能仪KA5000F
- (JavaScript)贪婪模式和非贪婪模式(懒惰模式)
- 【目标跟踪】|Exemplar Transformers
- 【小嘟陪你刷题04】Java实现水花仙数、九九乘法表、金字塔
- 工程伦理第九章习题答案
- 如何用python做二维码识别软件_Python什么都能做(一)用 Python 做一个扫码工具...
- 国内外互联网地图常用的几种坐标系统:概念,原理和应用
- 诸葛越:云平台为创业者提供了更多机会