强连通分量
A_loud_name
23333333~~~
展开
-
poj 1236 Network of Schools 强连通分量
题目大意 N(2问题1:初始至少需要向多少个学校发放软件,使得网络内所有的学校最终都能得到软件。2,至少需要添加几条传输线路(边),使任意向一个学校发放软件后,经过若干次传送,网络内所有的学校最终都能得到软件。 分析 先跑一遍taijian算法。然后把一个强连通分量当做一个点,求入度为0的点的个数,就是问题一的答案(因为只有入度为0的强连通分量要分一套软件)。再求出原创 2016-06-04 10:05:30 · 425 阅读 · 4 评论 -
poj 2186 Popular Cows 强连通分量
题目大意 n头奶牛,给出若干个欢迎关系a b,表示a欢迎b,欢迎关系是单向的,但是是可以传递的。另外每个奶牛都是欢迎他自己的。求出被所有的奶牛欢迎的奶牛的数目 分析 先跑一遍taijian算法。那么出度为0的强连通分量代表的就是受其他奶牛欢迎的,但是如果出度为0的强连通分量的个数大于1那么则无解。因为将至少有两个分量里的奶牛互相不喜欢(因为他们的出度为0,不连接其他点,就不喜欢原创 2016-06-04 10:27:59 · 436 阅读 · 3 评论 -
自行车比赛+纪中1238+tarjan缩点+拓扑排序+玄学优化
Description自行车赛在一个很大的地方举行,有N个镇,用1到N编号,镇与镇之间有M条单行道相连,起点设在镇1,终点设在镇2。问从起点到终点一共有多少种不同的路线。两条路线只要不使用完全相同的道路就被认为是不同的。Input第一行两个整数:N和M(1接下来M行,每行包含两个不同的整数A和B,表示有一条从镇A到镇B的单行道。两个镇之间有可能不止一原创 2016-07-11 21:23:17 · 689 阅读 · 3 评论 -
旅行 纪中2569 tarjan缩点+递归+玄学优化
DescriptionX先生来到了一个奇怪的国家旅行。这个国家有N个城市,每个城市均有且仅有一个机场,但是这机场所有航班只飞往一个城市。每个城市有一个游览价值,第i个城市的游览价值为A[i]。 现在他想知道,从第i个城市出发,并只坐飞机飞往下一个城市,游览价值之和最多是多少(一个城市游览多次只计算1次游览价值)Input输入文件travel.in的第1行为一个正整数N。 第2行有N个非负整数A[原创 2016-08-15 15:27:24 · 450 阅读 · 0 评论 -
NOIP2015 提高组 day1 信息传递
分析用tarjan·强连通分量找一个最小的环代码const maxn=400100;type arr=record x,y:longint; next:longint;end;var status:array[0..maxn] of boolean; dfn,low:array[0..maxn] of longint; sign:array[1..maxn] o原创 2016-09-08 20:04:20 · 483 阅读 · 0 评论 -
间谍网络 洛谷 1262 强连通分量
题目大意给你一些点,再指定其中的一部分点并加上权值,问是否有一种方案,使得从指定的点中的某几个点开始对图遍历,能把整个图遍历完,并且权值最小。分析tarjan缩点。对于每一个强连通分量,我们就要那个权值最小作为权值即可。缩完点后构图,统计入度。如果一个强连通分量的入度为0且里面没有点有权值,那就输出no。不然,每个入度为0的强连通分量的权值和就是答案。。。code#include<iostream>原创 2017-01-13 12:59:54 · 486 阅读 · 0 评论 -
加边 ssl 2630 强连通分量(缩点)
题目大意给出一个大小为N × M (1 ≤ N, M ≤ 300)的矩形,矩形的每个位置有一个高度 h (1 ≤ h ≤ 1,000,000)。在相邻的格点间,你可以上下或者左右移动。但是你只能从高的格点走向不比它高的格点。相同高度的格点间两个方向都能移动。 现在,你需要计算出至少需要添加多少条双向边才能使到矩阵任意两点之间都可以互相。分析根据规则建图后缩点,统计各个点的入度和出度。 再分别统原创 2017-04-05 21:20:53 · 313 阅读 · 0 评论