LuoGuP3802:小魔女帕琪

Pre

不会

先膜拜一发ButterflyDew的题解

Solution

这道题可以考虑前\(7\)个事件触发的概率。

就是\(7!\times\prod\limits_{i=1}^7\frac{a_i}{N-i+1}\)

至于为什么是\(7!\),因为不同顺序乘起来发现分子分母都一样,所以概率一样,所以就是\(7!\)

然后证明对于每一个\([k,k+6]\)(\(k\)的限制自己猜,我不想写)这个区间触发的概率都是一样的,也就是上面的式子。

\(ButterflyDew\)的题解给出的是证明\([k-1,k+5]\)触发的情况下。

实际上可以感性理解,因为任意一个位置任意一个权值的概率是恒定的。

也就是不考虑\([1,i-1]\)\([i+1,n]\)的取值,\(i\)位置上的取值是\(k\)的概率一定为\(\frac{a_k}{N}\)

也就是与前面的发生情况无关,如何证明请自己去猜。

如果我不是鸽子的话就会补。

所以一共有\(n-6\)个位置,可能会触发。

答案就是\(7!\times\prod\limits_{i=1}^7\frac{a_i}{N-i+1}\times(N-6)\)

Code

#include <cstdio>
#define ll long long
#define xx first
#define yy second
using namespace std;
int a1, a2, a3, a4, a5, a6, a7;
int main () {
    #ifdef chitongz
    freopen ("x.in", "r", stdin);
    #endif
    scanf ("%d%d%d%d%d%d%d", &a1, &a2, &a3, &a4, &a5, &a6, &a7);
    double N = a1 + a2 + a3 + a4 + a5 + a6 + a7;
    double ans = 5040.00 * a1 / N * a2 / (N - 1) * a3 / (N - 2) * a4 / (N - 3) * a5 / (N - 4) * a6 / (N - 5) * a7;
    printf ("%.3lf\n", ans);
    return 0;
}

Conclusion

一定注意要写成\(5040.00\)否则会成\(80\)分。

转载于:https://www.cnblogs.com/ChiTongZ/p/11348323.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值