1 条题解
-
0njnu21200106 (fmy_xfk) LV 8 @ 2022-10-02 21:45:34
由于题解区Markdown功能有限,您可以前往CSDN查看命题人提供的完整版题解。传送门
这里是一个简化版的题解。
40% 简单递推
记从\(x\)号扇区开始读取直到退出时的跳转次数的数学期望为\(E(X)\),则容易得到递推公式\(E(X)=\frac{1}{2}E(L_X)+\frac{1}{2}E(R_X)+1\),规定\(E(0)=-1\)。对于1,2,5,6四个数据点,直接从底向上(到1号点)递推计算即可。也可以自顶向下递归操作。复杂度\(O(n)\);
60% 高斯消元
硬盘有\(n\)个扇区,则我们可以列出\(n\)个线性方程。容易看出可以应用Gauss-Jordan消元法来解方程组,最终得到\(E(1)\)的值。复杂度\(O(n^3)\)。该方法可以通过3,4数据点,但有可能卡常数。
100% 递推+拓扑排序
数据范围的特殊条件即描述了一种有向无环图(DaG)的情形。在这种情况下,使用拓扑排序逐步向前递推计算,其复杂度近似是\(O(n)\)的。即便不是DaG,我们也容易看出其中最多有一个环。该环一定包含\(k\)号扇区,从\(k\)号扇区遍历整个图,即可得到整个环,不满足递推性质而需要移项解方程的情形也发生在\(k\)号扇区对应的方程中。
因此,我们可以得到最终方法:
1. 应用拓扑排序,求出部分扇区的期望。如果没有环,这一步就能求出所有扇区的期望;
2. 从\(k\)号扇区开始找环,逐步**展开方程**,从而求出\(k\)号扇区的期望;
3. 继续拓扑排序,求出所有扇区的期望;展开方程的方法:
在等式\(E(X)=\frac{1}{2}E(L_X)+\frac{1}{2}E(R_X)+1\)中,\(L_X,R_X\)中有且仅有一个的期望是已知的,因此该式可以改写为\(E(X)=\frac{1}{2}E(Ch_X)+C\),其中\(Ch_X\)表示X的某个孩子,\(C\)表示常数。
从\(X=k\)开始搜索,每次令\(X:=Ch_X\),直至搜出整个环。
如果环中有\(h\)个扇区,则最后的方程为\(E(k)=(\frac{1}{2})^{h}E(k)+C'\),可得\(E(k)=\frac{C'}{1-\frac{1}{2^h}}\)。
- 1
信息
- ID
- 1392
- 难度
- 10
- 分类
- (无)
- 标签
- (无)
- 递交数
- 7
- 已通过
- 0
- 通过率
- 0%
- 上传者