题目链接 一个点到达终点的期望步数 \(E_i=\sum_{(i,j)\in G}\frac{E_j+1}{out[i]}\),\(out[i]\)为点\(i\)的出度. 那么对于一个DAG可以直接在反向图上拓扑+DP求解. 于是对于环内高斯消元,缩点后拓扑+DP. 无解(无限步)的情况: 起点到不了终点:起点能够走到一个环,且在这个环内无法走到终点(走不出去). ps:1.T连出的边不能计算. 2.期望的计算式有个+1! 3.建反向边! 4.重边 注: 如果\(E_i\)表示从起点到点\(i\…
Description Morenan被困在了一个迷宫里.迷宫可以视为N个点M条边的有向图,其中Morenan处于起点S,迷宫的终点设为T.可惜的是,Morenan非常的脑小,他只会从一个点出发随机沿着一条从该点出发的有向边,到达另一个点.这样,Morenan走的步数可能很长,也可能是无限,更可能到不了终点.若到不了终点,则步数视为无穷大.但你必须想方设法求出Morenan所走步数的期望值. Input 第1行4个整数,N,M,S,T 第[2, M+1]行每行两个整数o1, o2,表示有一条从o…
题意 题目链接 Sol 设\(f[i]\)表示从\(i\)走到\(T\)的期望步数 显然有\(f[x] = \sum_{y} \frac{f[y]}{deg[x]} + 1\) 证明可以用全期望公式. 那么我们可以把每个强联通分量里的点一起高斯消元,就做完了. (warning:BZOJ没有C++11,但是下面的代码是正确的,至于为什么可以点题目链接....) #include<bits/stdc++.h> using namespace std; const int MAXN = 1e6 +…
BZOJ_3143_[Hnoi2013]游走_期望DP+高斯消元 题意: 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获得等于这条边的编号的分数.当小Z 到达N号顶点时游走结束,总分为所有获得的分数之和. 现在,请你对这M条边进行编号,使得小Z获得的总分的期望值最小. 分析: 题可以转化为求每条边被通过次数的期望.每条边的期望等于两个端点被通过次数的期望乘上通过这条…
数据范围太大不能直接高斯消元, tarjan缩点然后按拓扑逆序对每个强连通分量高斯消元就可以了. E(u) = 1 + Σ E(v) / degree(u) 对拍时发现网上2个程序的INF判断和我不一样(他们2个的INF判断也不一样).....然而都A掉了....我觉得应该是他们写错了,我的做法应该没错的(正反2遍dfs,GDOI2015day1t1大冒险)(求打脸 -----------------------------------------------------------------…
2707: [SDOI2012]走迷宫 题意:求s走到t期望步数,\(n \le 10^4\),保证\(|SCC| \le 100\) 求scc缩点,每个scc高斯消元,scc之间直接DP 注意每次清空系数矩阵 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> using namespace std; typ…
先Tarjan缩点 强连通分量里用高斯消元外面直接转移 注意删掉终点出边和拓扑 #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #include<queue> #include<vector> #define N 10010 #define M 1000010 using namespace std; typedef double D;…
http://www.lydsy.com/JudgeOnline/problem.php?id=2707 dp[i] 表示从点i到终点的期望步数 dp[i]= Σ (dp[j]+1)/out[i] j表示i的出边指向的店,out[i] 表示i的出边数 如果图是一张DAG,那么直接在反图 上 拓扑排序DP即可 现在有环,那就缩点,环上的用高斯消元 无解的情况: 1.起点走不到终点 2.存在一个联通块,起点能走到他,但这个联通块没有出边,且不是终点所在的联通块 因为此时一旦步入这个联通块将永远走不出…
地下迷宫 Time Limit:1000MS  Memory Limit:32768K Description: 由于山体滑坡,DK被困在了地下蜘蛛王国迷宫.为了抢在DH之前来到TFT,DK必须尽快走出此迷宫.此迷宫仅有一个出口,而由于大BOSS的力量减弱影响到了DK,使DK的记忆力严重下降,他甚至无法记得他上一步做了什么.所以他只能每次等概率随机的选取一个方向走.当然他不会选取周围有障碍的地方走.如DK周围只有两处空地,则每个都有1/2的概率.现在要求他平均要走多少步可以走出此迷宫. Inpu…
做法太神了,理解不了. 自己想到的是建出AC自动机然后建出矩阵然后求逆计算,感觉可以过$40%$ 用一个状态$N$表示任意一个位置没有匹配成功的概率和. 每种匹配不成功的情况都是等价的. 然后我们强制在后面加上长度为m的01串,那么这个串的概率是一定的. 然后考虑加上的这些字符还能拼成什么串,因为状态$N$的末尾是不确定的. 如果另外一个串的后缀等于这个串的前缀的话,是可能带来影响的. 所以计算出影响的概率,然后高斯消元即可. 然而有一个问题,N的概率最后消出来代表什么意思啊,是指期望的长度吗?…