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 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
poj3694(tarjan
缩点
+lca)
分析:方法(1219ms):用并查集
缩点
,把不是桥的点缩成一个点,然后全图都是桥,每次加边的两个点如果是缩后的同个点,必定不是桥,否则是桥,再把它们到达lca之间的点缩成一点。
·
2015-11-13 04:52
tar
poj3177(边双连通分量+
缩点
)
传送门:Redundant Paths 题意:有n个牧场,Bessie 要从一个牧场到另一个牧场,要求至少要有2条独立的路可以走。现已有m条路,求至少要新建多少条路,使得任何两个牧场之间至少有两条独立的路。两条独立的路是指:没有公共边的路,但可以经过同一个中间顶点。 分析:在同一个边双连通分量中,任意两点都有至少两条独立路可达,因此同一个边双连通分量里的所有点可以看做同一个点。
·
2015-11-13 04:52
poj
连通性学习笔记
无向图的
缩点
:1,求无割边子图 方法:求low[]及dfn[]后floodfill 题目:POJ3177
·
2015-11-13 03:06
学习笔记
hdu 4005 边连通度与
缩点
思路:先将图进行
缩点
,建成一颗树,那么如果这是一条单路径树(即最大点度不超过2),就不在能删的一条边,使得不连通。因为将其头尾相连,形成一个圈,那么删任意一条边,图都是连通的。
·
2015-11-13 02:49
HDU
hdu 4635 强连通度
缩点
思路:想用Tarjan算法进行
缩点
,并记录每个连通分支的点数。
·
2015-11-13 02:36
HDU
hdu 4612 边连通度
缩点
+树的最长路径
思路:将以桥为分界的所有连通分支进行
缩点
,得到一颗树,求出树的直径。
·
2015-11-13 02:16
HDU
poj 2553 强连通分支与
缩点
思路:将所有强连通分支找出来,并进行
缩点
,然后找其中所有出度为0的连通分支,就是题目要求的。
·
2015-11-13 02:08
poj
poj 3177 边连通分量
思路: dfs求出所有点的low值,然后对每个连通分量进行
缩点
,可以通过low来进行
缩点
。虽然在同一连通分量里可能存在不同的low值,但这并不影响
缩点
。
·
2015-11-13 02:05
poj
两道很好的网络流
pid=2453 传送门 首先看到这题,想到了去年多校得时候一个网络流,由于上次得出的经验,先用二进制状态压
缩点
是必须的了。
·
2015-11-13 02:30
网络流
POJ 3160 Father Christmas flymouse 解题报告
一个经典的图DP,首先对无向图进行强联通分量
缩点
变成DAG,这样就可以在DAG上用拓扑序做DP 需要注意的是点权是有负数的情况为此WA无数次 附代码供后人参考 #include <cstdio
·
2015-11-13 02:10
poj
POJ 2186 Popular Cows(强联通+
缩点
)
Description Every cow's dream is to become the most popular cow in the herd. In a herd of N (1 <= N <= 10,000) cows, you are given up to M (1 <= M <= 50,000) ordered pairs of the form (A
·
2015-11-13 02:18
poj
hdu 4612 Warm up(无向图Tarjan+树的直径)
思路:这个标准想法很好想到,
缩点
后,求出图中的桥的个数,然后重建图必为树,求出树的最长直径,在该直径的两端点连一边,则图中的桥会最少。 从这题中学到两点,所以写一下解题报告。
·
2015-11-13 01:39
tar
POJ 3352 Road Construction
同样用tarjan
缩点
,然后求出
缩点
树的叶子结点个数,再按照公式计算。 /*Accepted 220K 0MS C++ 1783B 2012-07-30
·
2015-11-13 01:31
struct
POJ 3177 Redundant Paths
参考staginner大牛的写法,将边双连通分量
缩点
,题再次被转化为“至少在
缩点
树上增加多少条树 边,使得这棵树变为一个双连通图”。
·
2015-11-13 01:30
Path
hdu 4612 Warm up 桥
缩点
分析:我们可以双联通分量进行
缩点
,原图变成了一棵树。问题变成了:求树中添加一条边之后,使得不在圈的边最少。显然求一边直径,用总边数减掉最长路上的边数就是答案。注意数据存在重边的情况。
·
2015-11-13 00:27
HDU
POJ 3164 Command Network 最小树形图模板
3.沿着节点的前驱找,如果发现环,把环
缩点
。 4.如果不存在环,结束。否则,跳到1. 其实我是来贴模板的。。。 比较好的讲解:最小树型图的求解
·
2015-11-13 00:23
command
POJ 1344
2、对于这种有两片叶子以上上作为孩子的结点,除该子树的所有的结点到它的叶子都会经过该节点,所以可以直接将该子树
缩点
变成一个大点,记录这个结点到其他所有点的距离。 3、
·
2015-11-13 00:06
poj
hdu4635Strongly connected
pid=4635 tarjan
缩点
统计
缩点
后每个结点的出度入度 将那个包含原来点数最少的 且出度或者入度为0的大节点看作一个整体内部连边n*(n-1)个 连全部的; 其它的点为一整体连全部的 再两者连一同向的边
·
2015-11-13 00:36
connect
poj 2375 Cow Ski Area bfs
这个题目用tarjan找联通块,
缩点
,然后统计出入度为0的点理论上是可行的,但问题是会暴栈。
·
2015-11-12 23:28
poj
【HDU4612】 双连通分量求桥
先
缩点
变成一颗树,再求树的最长直径,直径两端连一条边就是最优解了。
·
2015-11-12 23:37
HDU
【HDU3861 强连通分量
缩点
+二分图最小路径覆盖】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3861 题目大意:一个有向图,让你按规则划分区域,要求划分的区域数最少。 规则如下:1、有边u到v以及有边v到u,则u,v必须划分到同一个区域内。2、一个区域内的两点至少要有一方能到达另一方。3、一个点只能划分到一个区域内。 解题思路:根据规则1可知必然要对强连通分
·
2015-11-12 23:35
HDU
COJ1128(Download Station)
可以先求强连通分量,统计
缩点
后的图中入度为0的点和出度为0的点,答案就是两者中的较大者,需要注意的是当原图是强连通时,直接输出0。因为没有初始化WA了一次。
·
2015-11-12 22:53
download
POJ3177(Redundant Paths) or POJ3352(Road Construction)
由于是第一次写双连通图的
缩点
,所以WA了5次,在WA到AC的过程中,发现的错误如下:1、深度优先数没有初始化;2、深度优先数初始化错误;3、桥的判断有误;4、输入数据有重边,使用邻接表存储没有跳过重边。
·
2015-11-12 22:45
struct
POJ1236(Network of Schools)
可以先用kosaraju将强连通分支
缩点
,得到原图的基图,然后统计入度为0的连通分量个数和出度为0的连通分量个数,入度为0的必须给它发消息,入度不为0的不必给发消息,所以第一问所求即为
缩点
后的图中入度为
·
2015-11-12 22:41
NetWork
POJ2762(Going from u to v or from v to u?)
这题我用的是两次dfs求强连通图,将强连通分量缩成一个点,然后对
缩点
后的有向图进行拓扑排序,判断单项连通。
·
2015-11-12 22:40
poj
POJ 2553 The Bottom of a Graph
求图的底,就是找出经过
缩点
后的图中出度为0的点, 每个点中的元素就是图的底。然后 有序输出,不要多输出空格。将tarjan算法敲的比较熟了。
·
2015-11-12 22:01
Graph
POJ 1236 Network of Schools
先将图用tarjan
缩点
,形成无环图。然后求出其中入度为0和出度为0的点的个数ans1和ans2。 然后根据题意,入度为0的点需要添加一条边,所以第一问的结果就是ans1。这里的点都是图 的
缩点
。
·
2015-11-12 22:59
NetWork
POJ 2186 Popular Cows
原图是一个有向图,将其
缩点
后,每一个强连通分量是 一个点,找出出度为1的点的个数,如果大于1,那么无解。如果等于1,则输出这个强连通 分量中点的个数。
·
2015-11-12 22:59
poj
HDU4612+Tarjan
缩点
+BFS求树的直径
tarjan+
缩点
+树的直径题意:给出n个点和m条边的图,存在重边,问加一条边以后,剩下的桥的数量最少为多少。先tarjan
缩点
,再在这棵树上求直径。加的边即是连接这条直径的两端。
·
2015-11-12 22:23
tar
HDU 4635
总边数sum=n*(n-1)时肯定是强连通,已经给了m条边,sum-=m 这时把已经强连通的部分进行
缩点
,对于缩好的点我们把他们分成两部分,保证其中一部分到另一部分没有边(这两部分不强连通
·
2015-11-12 21:29
HDU
上一页
17
18
19
20
21
22
23
24
下一页
按字母分类:
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
其他