「AGC007C」Pushing Balls - 概率期望
Posted at 18-2-7 14:46, Updated at 19-10-16 21:59
题目链接:传送门
Description
在一条直线上有 个球和 个坑共 个“物品”, 个球在第 和第个坑之间。
球与坑之间是有距离的,这些距离组成了首项为 ,公差为 的等差数列。
即第i个物品和第 个物品之间的距离是 。
小 A 会进行 轮操作,每轮操作中,先从剩下的球中等概率地选择一个,然后等概率地选择一个方向,这个球将会朝这个方向滚,直到遇到一个里面没有球的坑并落进去留在里面。
然后这一轮的收益为球滚的距离。
Hint
1 <= N <= 200000 1 <= a, x <= 100
Sample Input
1 3 3
Sample Output
2 1 0
Solution
首先把“操作”换一种表述:等概率选择相邻的两个物品,并拿走他们,收益为两物品之间的距离,这样就不必区分球和坑了。
我们会发现,每次操作后的“期望局面”仍然是一个等差数列
记为现在剩下的区间数,一开始,计算得到
然后每次
这样就能计算了
Summary
和还有如何计算开始一直不知道怎么推的,后来自己静下心来画了个图暴力算了下发现居然推出来了。所以以后做题还是不能太浮躁,像这种题要在草稿纸上多验算一下,不能只是在脑海中想一下大概的方法。
Code
1 |
|