【题目大意】:
给你个无向图,猫在一个点,老鼠在一个点,猫一次走两步,老鼠一次可以一步,也可以不走。猫每次会选择离老鼠最近的并且编号最小的点走。老鼠有1/(p+1)的概率停留在原地或走向相邻的一个点(p为当前点的度)。求猫追老鼠的步数的数学期望。
【题目分析】:
真是个悲剧的题啊~最开始就想这个题没法做啊……怎么搞啊,我会的求期望的方法就是分布列。
后来看了cai0715神牛的题解豁然开朗,原来数学期望可以通过从上一步来的所有的期望步数之和比上(p+1)然后再加1这么搞~~
然后这题就比较简单了,开始先预处理出来一个数组p[x,y]表示在猫在x,是老鼠在y时候,猫会选择怎么走。这个就是一个广搜就好。
然后就是记忆化搜索,方程:
F[I,J]:=(Sum{F[P[P[I,J],J],Son[J]]}+F[P[P[I,J],J],J])/(Son[J]+1)+1
【代码】: