E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
强联通缩点
HDU 3639 Hawk-and-Chicken(Tarjan
缩点
+反向DFS)
Problem Description Kids in kindergarten enjoy playing a game called Hawk-and-Chicken. But there always exists a big problem: every kid in this game want to play the role of Hawk. So the tea
·
2015-11-13 15:14
tar
BZOJ 1093 [ZJOI2007]最大半连通子图
先强连通
缩点
,然后重新构图,然后找出包含点数最多的链,统计个数即可,可以用拓扑排序搞~ pS:重新构图时有重边,然后导致统计方案数的重复。。wa了好久。。
·
2015-11-13 15:05
2007
POJ 2762 (弱连通)强连通+
缩点
+拓扑排序
由此推出该题为No的充分必要条件:
缩点
拓扑排序过程中
·
2015-11-13 14:11
poj
POJ 1236(强连通分量)Tarjan+
缩点
以前写过这个题,因为还就不写tarjan了,用这道题熟悉一下。 题目大意: 给定一个n (n<=100)个点的有向图,问: Q1、最少需要选择多少个点,使得从这些点出发能遍历完整个图; Q2、最少需要添加多少条有向边,使得整个图成为连通图; 分析:  
·
2015-11-13 14:03
tar
Hdu 2767 把森林变成强连通分量.cpp
思路: 根据题意就可以知道有这个推理: 原图
缩点
后的有向无环图.. 出度为0的点和入度为0的点中个数少的那些点向个数多的那些点连线..
·
2015-11-13 14:46
HDU
POJ 2762 强连通分量中存在单相连通边 【tarjan+toposort+
缩点
】.cpp
题意: 给出一些房间之间的关系 问任意两个房间是否存在一条互通的路径..即单相连通.. 输入: 给出T表示有T组数据 每组数据给出n m 表示n个房间 m个关系 接下来m行..每行给出a b 表示a房间 和 b房间之间是连通的.. 如果任意两个房间之间存在单相连通..则输出yes 否则 no 思路:
·
2015-11-13 14:45
sort
POJ 1236 【强连通图+
缩点
】.cpp
题意: 给出n个学校的兄弟学校..<单方面认为> 如果给了一个软件给某个学校..他就会把这个软件给他的兄弟学校.. 然后求两个解: 1st: 至少准备多少个软件..可以使所有的学校都有这个软件.. 2nd:至少加多少条边..可以使只给一个软件..就能让所有学校都得到这个软件.. 输入: 一个n 代表有n个学校.. 接下来n行..
·
2015-11-13 14:45
poj
BZOJ 1023 [SHOI2008]cactus仙人掌图 DP+单调队列
这题不能用普通的tarjan来
缩点
,因为看第一个样例普通tarjan会跪的很惨。。 然后乱yy一个
缩点
就好了。 桥边和环上的边分开处理,挺容易看懂的。。。
·
2015-11-13 14:52
2008
BZOJ 1051
缩点
按照关系建立又向边,
缩点
为DAG图,重新构图,判断是否有且仅有一个出度为0的点,如果是,这个点所代表的环上的点数就是答案。
·
2015-11-13 14:36
ZOJ
1218. Episode N-th: The Jedi Tournament
space=1&num=1218
缩点
后形成树 树的根节点 就是有可能获胜的点 #include<iostream> #include<cstdio>
·
2015-11-13 13:44
name
1742. Team building
space=1&num=1742 连通分量 方法: 找到环
缩点
建立新图 新图是一个森林 新建的的森林 有多少节点 那么就有最多多少team  
·
2015-11-13 13:42
Build
1198. Jobbery
space=1&num=1198 英语真的是硬伤呀 读了N遍 愣是没有读懂 最后看了别人的提示 反正是联通分量
缩点
然后对
缩点
后的图进行求解
缩点
后的图必须有且仅有一个点入度为0 然后输出这个入度为
·
2015-11-13 12:16
job
sdut 2506 完美网络
action=showproblem&problemid=2506 连通分量
缩点
后形成新的图(不用新建也可以) 是一个森林 如果
缩点
后是就剩一个点 则答案为 0
·
2015-11-13 12:11
网络
poj 3683 Priest John's Busiest Day
id=3683 标准的2-sat 而且是需要输出路径的 一直纠结
缩点
后建反向图 再利用拓扑排序那一点到底是怎么弄的 原来是自己的拓扑排序没学好 晕 还有刚开始学邻接表的时候一直用动态的
·
2015-11-13 12:47
poj
【BZOJ】3397: [Usaco2009 Feb]Surround the Islands 环岛篱笆(tarjan)
id=3397 显然先tarjan
缩点
,然后从枚举每一个scc,然后向其它岛屿连费用最小的边,然后算最小的即可 #include <cstdio> #include <cstring
·
2015-11-13 11:21
USACO
【BZOJ】3296: [USACO2011 Open] Learning Languages(tarjan)
id=3296 显然,每群能交流的群是个
强联通
块 然后求出scc的数量,答案就是scc-1 #include <cstdio> #include <cstring>
·
2015-11-13 11:18
language
【wikioi】1002 搭桥(dfs+最小生成树)
那么我们就可以将这些城市看做
缩点
后的点集x
·
2015-11-13 11:08
最小生成树
【BZOJ】1878: [SDOI2009]HH的项链(树状数组)
一开始看到此题,我想了想在线做法,但之后觉得这个想法可能是错的:维护一颗splay,按输入顺序建树,将相同节点
缩点
,维护2个值,一个是size,为节点数量,一个是size2,为不同节点数量,然后取区间操作即可
·
2015-11-13 11:52
树状数组
HDU 3605Escape(
缩点
+网络流之最大流)
这题也不是全然自己想的,没想到
缩点
这一技巧,由于n的数据范围太大,普通的建图方法会超时超内存,须要
缩点
,由于对于每一个点来说,一
·
2015-11-13 11:51
escape
poj Road Construction
方法: 1,
缩点
2,建新树 3,求叶子节点 注意:
·
2015-11-13 11:06
struct
poj 3114 Countries in War
;题目大意: n个间谍 他们之间传送信息需要一定的时间 一个联通分量里面的间谍属于一个国家,之间的信息传递不需要时间 然后问你从一个间谍传一个信息到另一个间谍那需要最少时间 也可能传不到 联通
缩点
·
2015-11-13 11:05
count
poj 3592 Instantaneous Transference
每次做联通分量的题都是细节方面出错 伤不起呀 一张图 有些点是有矿可走 有些不可走 有些是时空转换点 矿车从左上开始走问最多能才多少矿 1,把二维图变成一维 由于时空转换点的存在使图存在了环 2,
缩点
·
2015-11-13 11:04
ant
poj 2186 Popular Cows
id=2186 给你n头牛 他们之间会有一种 A认为B popular 的关系 而且这种关系是可传递的 问你有多少头牛是被所有其他的牛认为popular 1,
缩点
将一个联通分量内的点缩成一个
·
2015-11-13 11:03
poj
poj 3694 Network
id=3694 用了Tarjan bfs
缩点
所以时间复杂度比较高 思路 先建双向图 重边要处理(用一个变量表示边数) 用Tarjan算法
缩点
重新建了一个
缩点
后的双向图 增加边时用bfs
·
2015-11-13 11:02
NetWork
【BZOJ】1179: [Apio2009]Atm(tarjan+spfa)
id=1179
缩点
建图。。。
·
2015-11-13 11:10
SPFA
【BZOJ】1093: [ZJOI2007]最大半连通子图(tarjan+拓扑序)
id=1093 两个条件综合起来加上求最大的节点数,那么很明显如果是环一定要
缩点
。 然后再仔细思考下就是求dag的最长路的数目啦。。。 然后wa了。。。 看了题解。。。噗!
·
2015-11-13 11:34
2007
【NOIP模拟题】Graph(tarjan+dfs)
先tarjan
缩点
然后dfs就行了QAQ。 (我不说我被一个sb错调了半个小时。。。。不要以为
缩点
后dfs就可以肆无忌惮的不加特判判vis了。。
·
2015-11-13 11:16
Graph
hdu 4612 Warm up
pid=4612 将原图进行
缩点
变成一个树 树上每条边都是一个桥 然后加一条边要加在树的直径两端才最优 代码: #include<iostream> #include<cstdio
·
2015-11-13 10:17
HDU
poj3177 Redundant Paths
显然已经处于某连通分量中的点之间必然存在两条不同路径,所以可以等效的把这个连通分量看成一个点来对待,这样就是
缩点
了,然后得到一棵树,此时推一下就知道还需要的边数=(叶子节点数+1)/2。
KIJamesQi
·
2015-11-13 10:00
uva
缩点
双连通分量
hdu 4635 Strongly connected(强连通+
缩点
)
求出scc后
缩点
得到scc图,对于一个scc点,如果他的入度为0,那么只需在完全图中,删去所有指向该强连通分量的边就行了,对于出度为0的scc点也是如此。
·
2015-11-13 09:38
connect
hdu 4635 Strongly connected
pid=4635 我们把
缩点
后的新图(实际编码中可以不建新图 只是为了概念上好理解)中的每一个点都赋一个值 表示是由多少个点缩成的 我们需要找所有端点 也可能出发点(只有出度) 也可能是结束点 (只有入度
·
2015-11-13 09:58
connect
UVA11324-- The Largest Clique(SCC+DP)
题目链接 题意:给出一张有向图,求一个结点数最大的结点集,使得该结点集中随意两个结点u和v满足:要么u能够到到v,要么v能够到达u(u和v能够互相到达) 思路:我们能够
缩点
,用Tarjan
·
2015-11-13 08:55
uva
APIO 2009 抢掠计划
不过题目的数据坑爹,有链状的...所以
缩点
要手工栈非递归才能AC不然86分...囧。我是写不出来了...
·
2015-11-13 07:24
api
HDOJ 4276
先将1到n的路径上的点进行
缩点
,总时间减去该路径长度,然后这道题就和ZOJ 3626一模一样了,也就是,树形DP。。
·
2015-11-13 06:01
OJ
poj1236(强连通
缩点
)
传送门:Network of Schools 题意:一些学校联接在一个计算机网络上,学校之间存在软件支援协议,每个学校都有它应支援的学校名单(A学校支援学校B,并不表示B学校一定支援学校A)。当某校获得一个新软件时,无论是直接获得还是通过网络获得,该校都应立即将这个软件通过网络传送给它应支援的学校。因此,一个新软件若想让所有联接在网络上的学校都能使用,只需将其提供给一些学校即可。
·
2015-11-13 06:52
poj
[HDU] 3836 Equivalent Sets
思路大致是:先将图中的强连通分量
缩点
,使得图变成一张无环图,这个时候图上剩余k1个出度为0的点和k2个入度为0的点,将出度为0的点连一条有向边到入度为0的点,此时形成一个环,这个环是一个强连通分量,可以再缩成一个点
·
2015-11-13 05:32
set
BZOJ 1015: [JSOI2008]星球大战starwar
/* * 分析: * 如果是动态使用tarjan求联通分量求
缩点
个数的话,肯定TLE。
·
2015-11-13 05:55
2008
uva 11324 The Largest Clique 强连通分量求
缩点
构造DAG
dp转移方程为dp[x] = size[x] + max(dp[y]);
缩点
后有边x到y的边,记忆化搜索就行了,具体看实现代码 #include <ios
·
2015-11-13 05:48
uva
hdu 1269 迷宫城堡 tarjan判断
缩点
个数是否为1
/* 题目: 求图中的任意两顶点是否两两互达 分析: tanjan算法求得
缩点
的个数,判断是否为一即可 */ #include <iostream>
·
2015-11-13 05:20
tar
hdu 1827 Summer Holiday // tarjan求
缩点
/* 题目: 听说lcy帮大家预定了新马泰7日游,Wiskey真是高兴的夜不能寐啊,他想着得快点 把这消息告诉大家,虽然他手上有所有人的联系方式,但是一个一个联系过去实在 太耗时间和电话费了。他知道其他人也有一些别人的联系方式,这样他可以通知其 他人,再让其他人帮忙通知一下别人。你能帮Wiskey计算出至少要通知多少人,至 少得花多少电话费就
·
2015-11-13 05:19
tar
hoj 2741 The Busiest Man // 强连通分支+
缩点
+传递闭包
我们可以重新建图,使得图中没有环,即把强连通分支 变成
缩点
后用邻接表重新建图,然后dfs求传递闭包即可 */ #include <cstdio&
·
2015-11-13 05:17
man
hoj 1520 The Bottom of a Graph // poj 2553 The Bottom of a Graph
/* 找到强连通分量变成
缩点
后求给出出度为0的所有点 以下用tarjan算法做,第一个是用结构体的邻接链表来做,第二个使用的是vector作为邻接链表 */ #include <cstdio
·
2015-11-13 05:17
Graph
hoj 3005 Game Rigging
强联通
分量求
缩点
/* 题目: 现给出各位选手的能力比较并给出自己的朋友的参赛号码,如何组织比赛使得自己的朋友能够获胜 分析: 各选手能力比较可以构造一个有向图,而想要使得自己的朋友要赢得比赛,所以他的所在的连通块 必定是入度为0的(假设建图时是以能力大的人作为
·
2015-11-13 05:16
game
HDU1115 几何+多边形重心
)/sumArea y=( sigma )( yi*mi )/sumArea 先把多边形变成多个三角形,分别求出mi(有点像面
缩点
·
2015-11-13 05:28
HDU
HDU1827 (tarjan+
缩点
)
因为可以通过其他人来通知他们认识的人,所以这幅图可以用强连通分量变成一个
缩点
的图,所有相互强连通分支变成一个
缩点
,求的所有
缩点
中入度为0的
缩点
即为 所求的需要通知的最小人数。
·
2015-11-13 05:19
tar
hdu1281+hdu2819(最大匹配数)
分析:将行和列
缩点
,即行对应二分图的X部,列对应二分图的Y部,然后交点为连接该行和该列的一条边。匹配时每点都会把整行整列占了,因此就不会出现冲突了。
·
2015-11-13 04:02
HDU
hdu3062(two-sat)
分析:two-sat裸题,对于有仇恨的两对夫妻u,v,连边u->v'和v->u';建好图直接tarjan
缩点
判断每对夫妻[i
·
2015-11-13 04:57
HDU
hdu1824(two-sat)
分析:将每个队的队长和两个队员当成i和i';然后对于每个限制a,b,连边a->b'和b->a';建好图后tarjan
缩点
判断每个强连通内是否存在矛盾[i,i']即可。
·
2015-11-13 04:57
HDU
hdu4635(强连通
缩点
)
传送门:Strongly connected 题意:求最多可以加多少边,使得最新的图还不是强连通图。 分析:最终添加完边的图,肯定可以分成两个部X和Y,其中只有X到Y的边没有Y到X的边,那么要使得边数尽可能的多,则X部肯定是一个完全图,Y部也是,同时X部中每个点到Y部的每个点都有一条边,但Y没有可以到达X的点,设X有a个点,Y有b个点,a+b=n,那么新图总边数sum=(a-1
·
2015-11-13 04:54
HDU
hdu4612(双连通
缩点
+树的直径)
分析:tarjan
缩点
后,重新建图得到一棵树,树上所有边都为桥,那么找出树的直径两个端点连上,必定减少的桥数量最多,因此ans=树的边数-树的直径。
·
2015-11-13 04:53
HDU
上一页
19
20
21
22
23
24
25
26
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他