P2973 [USACO10HOL]赶小猪】的更多相关文章

https://www.luogu.org/problemnew/show/P2973 dp一遍,\(f_i=\sum_{edge(i,j)}\frac{f_j\times(1-\frac{P}{Q})}{du_j} + \frac{P}{Q}\) 然后发现有环,高斯消元一遍 (zz到高斯消元都能写错...) #include<bits/stdc++.h> #define il inline #define vd void #define double long double typedef…
题意 题目链接 Sol 设\(f[i]\)表示炸弹到达\(i\)这个点的概率,转移的时候考虑从哪个点转移而来 \(f[i] = \sum_{\frac{f(j) * (1 - \frac{p}{q})}{deg(j)}}\) \(f[1]\)需要+1(炸弹一开始在1) // luogu-judger-enable-o2 #include<bits/stdc++.h> #define Pair pair<int, int> #define MP(x, y) make_pair(x,…
有后效性的DP:$f[u]$表示到$u$的期望次数,$f[u]=\Sigma_{(u,v)} (1-\frac{p}{q})*f[v]*deg[v]$,最后答案就是$f[u]*p/q$ 刚开始$f[1]=1$,,因为炸弹初始在$1$号节点.所以增广矩阵中$a[1][n+1]=1$. 系数矩阵$a[i][i]$赋值为1,其他点的系数写成负数,相当于是所有的加起来$=0$. #include<cstdio> #include<iostream> #include<cmath>…
跟那个某省省选题(具体忘了)游走差不多... 把边搞到点上然后按套路Gauss即可 貌似有人说卡精度,$eps≤1e-13$,然而我$1e-12$也可以过... 代码: #include<cstdio> #include<iostream> #include<cmath> #include<cstring> #define writeln(x) write(x),puts("") #define writep(x) write(x),pu…
Luogu sol 首先解释一波这道题无重边无自环 设\(f_i\)表示\(i\)点上面的答案. 方程 \[f_u=\sum_{v,(u,v)\in E}(1-\frac PQ)\frac{f_v}{du_v}\] \(f_1\)的那个方程加一个\(\frac PQ\)常数项 code #include<cstdio> #include<algorithm> #include<cstring> #include<queue> using namespace…
题面 Luogu Sol 设\(f[i]\)表示炸弹到\(i\)不爆炸的期望 高斯消元即可 另外,题目中的概率\(p/q\)实际上为\(1-p/q\) 还有,谁能告诉我不加\(EPS\),为什么会输出\(-0.00000\) # include <bits/stdc++.h> # define IL inline # define RG register # define Fill(a, b) memset(a, b, sizeof(a)) using namespace std; typed…
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - 洛谷2973 题意概括 有N个城市,M条双向道路组成的地图,城市标号为1到N.“西瓜炸弹”放在1号城市,保证城市1至少连接着一个其他城市.“西瓜炸弹”有P/Q的概率会爆炸,每次进入其它城市时,爆炸的概率相同.如果它没有爆炸,它会随机的选择一条道路到另一个城市去,对于当前城市所连接的每一条道路都有相同的可能性被选中.对于给定的地图,求每个城市“西瓜炸弹”爆炸的概率. 题解 通过概率关系构建方程: 其中in[j…
题目描述 The Cows have constructed a randomized stink bomb for the purpose of driving away the Piggies. The Piggy civilization consists of N (2 <= N <= 300) Piggy cities conveniently numbered 1..N connected by M (1 <= M <= 44,850) bidirectional ro…
嘟嘟嘟 这题和某一类概率题一样,大体思路都是高斯消元解方程. 不过关键还是状态得想明白.刚开始令\(f[i]\)表示炸弹在点\(i\)爆的概率,然后发现这东西根本无法转移(或者说概率本来就是\(\frac{p}{q}\)?),于是就考虑换状态. 一个非常好的状态是炸弹传到点\(i\)的概率,这样答案再乘以一个\(\frac{p}{q}\)就好了.转移也特别好办:\(f[i] = \sum (1 - \frac{p}{q}) * \frac{1}{du[v]}*f[v]\). 别忘了结点1的概率要…
luogu LINK:驱逐猪猡 bzoj LINK:猪猪快跑 问题是在1时刻有个炸蛋在1号点 这个炸弹有p/q的概率爆炸 如果没有爆炸 那么会有1/di的概率选择一条边跳到另外一个点上重复这个过程. 问炸弹在第i号点上爆炸的概率. 一个比较传统的在图上期望的题目.考虑每一秒都有p/q的概率爆炸 所以当秒数过大的时候我们可以忽略不记概率了. 但是这要求需要求出每一秒炸弹在某个点的概率. 设T矩阵当前时刻炸弹在某个点的概率 显然一开始T={1,0,0,...}; 可以发现在第二秒的时候 设W矩阵为由…