洛谷 P4284 [SHOI2014]概率充电器 概率与期望+换根DP 题目描述 著名的电子产品品牌\(SHOI\) 刚刚发布了引领世界潮流的下一代电子产品-- 概率充电器: "采用全新纳米级加工技术,实现元件与导线能否通电完全由真随机数决 定!\(SHOI\) 概率充电器,您生活不可或缺的必需品!能充上电吗?现在就试试看 吧!" \(SHOI\) 概率充电器由\(n-1\) 条导线连通了\(n\) 个充电元件.进行充电时,每条导 线是否可以导电以概率决定,每一个充电元件自身是否直接进…
3566: [SHOI2014]概率充电器 Description 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品——概率充电器:“采用全新纳米级加工技术,实现元件与导线能否通电完全由真随机数决定!SHOI 概率充电器,您生活不可或缺的必需品!能充上电吗?现在就试试看吧!”SHOI 概率充电器由 n-1 条导线连通了 n 个充电元件.进行充电时,每条导线是否可以导电以概率决定,每一个充电元件自身是否直接进行充电也由概率决定.随后电能可以从直接充电的元件经过通电的导线使得其他…
Description 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品——概率充电器: “采用全新纳米级加工技术,实现元件与导线能否通电完全由真随机数决定!SHOI 概率充电器,您生活不可或缺的必需品!能充上电吗?现在就试试看吧!” SHOI 概率充电器由 n-1 条导线连通了 n 个充电元件.进行充电时,每条导线是否可以导电以概率决定,每一个充电元件自身是否直接进行充电也由概率决定. 随后电能可以从直接充电的元件经过通电的导线使得其他充电元件进行间接充电. 作为 SHOI…
通过一次dfs求出dp(x)表示节点x考虑了x和x的子树都没成功充电的概率, dp(x) = (1-p[x])π(1 - (1-dp[son])*P(edge(x, son)).然后再dfs一次考虑节点x子树以外对节点x的贡献, 通过x的father算一算就可以了.O(N) ----------------------------------------------------------------------------------- #include<cstdio> #include&l…
3566: [SHOI2014]概率充电器 题意:一棵树,每个点\(q[i]\)的概率直接充电,每条边\(p[i]\)的概率导电,电可以沿边传递使其他点间接充电.求进入充电状态的点期望个数 糖教题解传送门 每个充电的点贡献1,就是求每个点充电的概率的和 考虑树形DP ,分别求子树内的影响和父亲的影响 \(g[i]\)表示i被子树i里的点充电的概率,\(f[i]\)表示i被充电的概率 因为被子树充电时子树里的点不可能被i充电, \[g[i] = q_i \bigcup g_v : (i,v) \i…
题意:树上每个点有概率有电,每条边有概率导电,求每个点能被通到电的概率. 较为套路但不好想的概率DP. 树形DP肯定先只考虑子树,自然的想法是f[i]表示i在只考虑i子树时,能有电的概率,但发现无法转移,因为只要有任何一个儿子同时满足“儿子有电且儿子到i的边导电”,这个点就能导电,而“或”命题在外层的概率通常因为容易算重而不好计算. 正难则反,考虑f[i]表示i在只考虑子树时无法通电的概率,它等于“所有儿子均不通电或儿子到这条边不导电”,转移方程是$f_x=(1-p_i)\prod (1-pre…
BZOJ 洛谷 这里写的不错,虽然基本还是自己看转移... 每个点的贡献都是\(1\),所以直接求每个点通电的概率\(F_i\),答案就是\(\sum F_i\). 把\(F_x\)分成:父节点通电给\(x\)带来的概率\(g_x\),和\(x\)及其子树通电给\(x\)带来的概率\(f_x\). 对于两个独立的事件\(A,B\),由概率加法公式,\(P(A+B)=P(A)+P(B)-P(A)P(B)\),\(F_x=f_x+g_x-f_xg_x\). 令\(p_x\)表示\(x\)本身通电的概…
这是一道告诉我概率没有想象中那么难的题..... 首先,用期望的线性性质,那么答案为所有点有电的概率和 发现一个点的有电的概率来源形成了一个"或"关系,在概率中,这并不好计算...(其实是可以算的,只不过式子要复杂点...) 考虑反面,一个点没电的概率来源是一个“与”关系,比较好计算 举个荔枝,有$A, B, C$三个变量,$A, B, C$分别有$0.5, 0.3, 0.2$的概率为$1$ 问$A | B | C$为$1$的概率? 如果,我们从正面考虑,那么答案为$0.5 + (1…
期望DP. 补集转化,考虑不能被点亮的情况, 然后就是三种情况,自己不能亮,父亲不能点亮它,儿子不能点亮它. 第一次计算比较容易,第二次计算的时候需要出去第一次的影响,因为一条线只能传导一次 #include <map> #include <ctime> #include <cmath> #include <queue> #include <cstdio> #include <cstring> #include <iostrea…
[算法]树型DP+期望DP [题意]一棵树上每个点均有直接充电概率qi%,每条边有导电概率pi%,问期望有多少结点处于充电状态? [题解]引用自:[BZOJ3566][SHOI2014]概率充电器 树形DP 概率DP by 空灰冰魂 最大的难点在于计算每个点充电期望时,两个节点各自的期望都会影响对方的期望. 所以考虑转化对象,改为求每个节点充不上电的期望,充不上电就不用考虑两者的相互影响. fi表示结点i由子结点和自身充不上电的概率 gi表示结点i由父结点充不上电的概率 第一次DFS: hi表示…