"题面" 题解 设 $f(n)$ 表示 $n$ 个人比赛总场数的期望值,通过枚举拓补序最后的强连通分量可得: $$ f(n) = \sum_{i = 1}^n s(i)c(n, i)\left[f(i) + f(n i) + i(n i) + \frac{i(i 1)}2 \right] $$ 其中 ...
分类:
其他好文 时间:
2020-01-13 23:46:03
阅读次数:
94
tarjan 算法思想 dfs,如果还能返回到起点,说明这些点是强联通的 模板 c++ include using namespace std; define mem(a,b) memset(a,b,sizeof(a)) define cin(a) scanf("%d",&a) define pii ...
分类:
其他好文 时间:
2019-12-24 12:15:10
阅读次数:
82
有向图强连通分量 无向图割点 cpp int rt,tot,dfn[N],low[N],cut[N],vis[N]; void tarjan(int u){ int v,t=0; low[u]=dfn[u]=++tot; vis[u]=1; for(node p=h[u];p;p=p nxt) if ...
分类:
其他好文 时间:
2019-12-15 21:37:53
阅读次数:
140
有向图的强连通分量:两个点如果能够相互到达,那么称他们相互强连通。若一个有向图的所有点对都是相互强连通的,那么称之为强连通图。一个有向图的极大强连通子图称为该图的强连通分量。 无向图的割点/边:去掉该点/边之后无向图的连通性发生改变的点/边称为割点/边。 无向图的点/边双连通分量:若一个无向图不存在 ...
分类:
其他好文 时间:
2019-11-25 20:23:12
阅读次数:
73
题目链接: "HDU 1269" Problem Description 为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个房间(N 输入包含多组数据,输入的第一行有两个数:N和M,接下来的M行每行有两个数a和b,表示了一条通道可以从A房间来到B房间。文件最后以两个0结束。 Output ...
分类:
其他好文 时间:
2019-11-21 22:52:33
阅读次数:
81
"Luogu P2515" 这道题的题面与P2146有点像。一些不同地方就是P2146是无环的,这题是有环的。 很显然,如果有几个软件的依赖关系形成环,那么这几个软件就可以被看成是一个大软件,其价值和空间都是原先的总和。 那么,我们就可以利用Tarjan算法求强连通分量+缩点,最后加一个树上的背包就 ...
分类:
其他好文 时间:
2019-11-11 15:37:01
阅读次数:
92
#include<map> #include<set> #include<cmath> #include<stack> #include<queue> #include<cstdio> #include<string> #include<vector> #include<cstring> #incl ...
分类:
编程语言 时间:
2019-11-10 15:42:59
阅读次数:
91
"Luogu P2002" "Luogu P2341" 使用强连通分量算法缩点 第一题统计入度为0的个数强连通分量数。 第二题的答案为当且仅当仅有一个强连通分量的出度为0时该强连通分量的节点数,原因如下:若一个强连通分量出度为0,则说明这个强连通分量的喜爱无法对外传递;若有多个强连通分量出度为0,则 ...
分类:
其他好文 时间:
2019-11-08 22:35:57
阅读次数:
110
这里记录一下我 已经复习过的东西了 这次玩脱了 可就真的 回去了 要再认真一点。 第一个知识点:点双联通分量 先来一个点双联通分量 这几天 有模拟赛考这个了 但是我不太会写,qwq.类似于强连通分量的那种东西不过栈里要一直存一个割点。 值得一提的是 我把点双写成边双 写错好多次了这次下次一定不能错要 ...
分类:
其他好文 时间:
2019-11-04 09:57:42
阅读次数:
65
传送门 "Luogu" 解题思路 首先我们要发现:在同一个强连通分量里的所有边都是可以无限走的。 那么我们就有了思路:先缩点,再跑拓扑排序。 那么问题就是 $\text{DP}$ 状态如何初始化。 我们首先考虑一条原始边权为 $c$ 的边,无限走可以刷出多少贡献: 假设我们走 $t$ 次就可以把这条 ...
分类:
其他好文 时间:
2019-10-26 22:35:28
阅读次数:
120