Pre
不会
先膜拜一发ButterflyDew的题解
Solution
这道题可以考虑前(7)个事件触发的概率。
就是(7! imesprodlimits_{i=1}^7frac{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! imesprodlimits_{i=1}^7frac{a_i}{N-i+1} imes(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
", ans);
return 0;
}
Conclusion
一定注意要写成(5040.00)否则会成(80)分。