Logo __vector__ 的博客

博客

P8236 魔法的力量 题解

...
__vector__
2025-12-01 12:55:45

本文章由 WyOJ Shojo 从洛谷专栏拉取,原发布时间为 2022-05-06 22:18:40

题目解法:

考虑一下每个石子被选中的概率。可以看出,到第 $i$ 轮合并之前,还剩下 $n-i+1$ 堆石子,那么显然,第 $i$ 轮合并每一堆石子 $j$ 有 $\frac{2}{n-i+1}$ 的概率被选上。
那么显然,答案就是 $(\sum_{i=1}^{n} a_i) \cdot (\sum_{i=2}^{n} \frac{2}{i})$

代码:

#include <bits\/stdc++.h>
using namespace std;
namespace Main
{
	typedef long double ld;
	int n;
	const int maxn=505;
	ld a[maxn];
	void main()
	{
		scanf("%d",&n);
		ld ans1=0;
		for(int i=1;i<=n;i++)
		{
			scanf("%Lf",&a[i]);
			ans1+=a[i];
		}
		ld ans2=0;
		for(int i=2;i<=n;i++)
		{
			ans2+=ld(2.0)\/ld(i);
		}
		printf("%.50Lf",ans2*ans1);
	}
}
int main()
{
	Main::main();
	return 0;
}

评论

暂无评论

发表评论

可以用@mike来提到mike这个用户,mike会被高亮显示。如果你真的想打“@”这个字符,请用“@@”。