【bzoj 4318】OSU!
作者:互联网
题意
一个长度为 $n$ 的字符串,第 $i$ 位有 $p_i$ 的概率是 $1$,否则是 $0$。一个字符串的分数定义为:对于字符串中每一个极长的连续一段 $1$,设这段 $1$ 的长度为 $x$,分数累加 $x^3$。
求字符串的期望分数。
题解
考虑分数累加 $x^3$ 而不是 $x$ 时怎么做。
设 $f_{i,j}$ 表示分数累加 $x$ 的 $j$ 次方时,第 $1$ 到 $i$ 位的期望分数。
则 $f_{i,1}$ 的转移显然为 $f_{i,1} = (1-p_i)\times f_{i-1,1} + p_i\times (f_{i-1,1}+1)$。
就是分两种情况:放 $0$,结束前面连续的一段 $1$(前面连续的一段 $1$ 的长度可能是 $0$);放 $1$,延长前面连续的一段 $1$(前面可能是 $0$,那就是新起一段 $1$)。
我们在转移 $f_{i,3}$ 时再考虑断的情况,所以把放 $1$ 的转移提出来,设 $x_{i,1}=p_i\times (f_{i-1,1}+1)$。
然后考虑 $f_{i,2}$,我们发现 $f_{i,2} = f_{i,2}\times (1-p_i) + (f_{i,2}+?)\times p_i$
$?$ 就是成功连接所增加的分数,这里显然不是 $1$,但我们可以考虑用 $x$ 和常数表示它。
我们发现 $(t+1)^2=t^2+2t+1$,所以
标签:分数,前面,4318,OSU,times,一段,字符串,累加,bzoj 来源: https://www.cnblogs.com/scx2015noip-as-php/p/bzoj4318.html