LeetCode 1227. 飞机座位分配概率

题目描述

1227. 飞机座位分配概率

思路分析

解法一:概率递推结论(推荐)

核心思路

  • 第 1 位乘客随机选座:若选到自己的座位,问题结束;若选到第 n 位座位,最后一人必失败;否则问题规模等价缩小。
  • 这种递推结构保证当 n >= 2 时,概率恒为 1/2。
  • n == 1 时答案为 1。


复杂度分析

  • 时间复杂度:O(1)。
  • 空间复杂度:O(1)。
class Solution {
    public double nthPersonGetsNthSeat(int n) {
        if (n == 1) {
            return 1.0;
        }
        return 0.5;
    }
}
func nthPersonGetsNthSeat(n int) float64 {
	if n == 1 {
		return 1.0
	}
	return 0.5
}

相似题目

题目 难度 考察点
808. 分汤 中等 概率
837. 新 21 点 中等 概率 / DP
470. 用 Rand7() 实现 Rand10() 中等 随机
528. 按权重随机选择 中等 随机
478. 在圆内随机生成点 中等 随机
本文作者:
本文链接: https://hgnulb.github.io/blog/2024/88179792
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处!