LeetCode 1227. 飞机座位分配概率 (概率、DP、思维)

1227. 飞机座位分配概率
最清晰的一份题解

class Solution {
    
    
public:
    double nthPersonGetsNthSeat(int n) {
    
    
        vector<double> dp(n+1);
        // dp[i] 代表有i位乘客,且第一位乘客随机选择座位的前提下
        // 第i位乘客能坐到自己座位上的概率
        // 那么dp[n]就是题目中要求的
        dp[1] = 1;
        for(int i=2;i<=n;i++){
    
    
            dp[i] = 1.0/i+(i-2)*1.0/i*dp[i-1];
            cout<<dp[i]<<endl;
        }
        return dp[n];
    }
};

猜你喜欢

转载自blog.csdn.net/qq_44846324/article/details/109007099