有一棵树,每个节点有一个自身通电的概率,每条边有一个能够导电的概率,求期望通电的节点个数。 n<=500000
在某些题库上提交居然爆栈了。。。
别人口中的傻逼题我居然做了辣么久,看来在期望这方面我还是有所欠缺啊。。。
一开始的想法是设f[i]表示i能够通电,i的子树的期望通电节点数,g[i]表示i不能通电的期望节点数。然后就推了半天没推出来。。。
正解是这样哒: 大体思路就是求出每个节点通电的概率然后加起来。 每个节点通电有三种情况: 1、自己通电 2、从子树通电 3、从非子树节点通电 第一种情况很好求。 对于第二种情况,我们设p[i]表示i通电的概率,那么递推式为
然后跟上面一样转移即可。 注意特判分母为0的情况。
新闻热点
疑难解答