
图论
奕申
acmer菜狗一个,冲冲冲!
展开
-
修建大桥计蒜客(深度优先搜索)
题目描述蒜头君来到一个由 nn 个小岛组成的世界,岛与岛之间通过修建桥,来让岛上的居民可以去其他的小岛。已知已经修建了 mm 座桥,居民们想让蒜头君帮忙计算,最少还要在修建几座桥,居民们才能去所有的岛。输入格式第一行输入俩个数字 nn,mm,分别代表岛的个数,和已经修建的桥的个数,岛的编号分别是 1 \ldots n1…n。(1 \leq n \leq 10001≤n≤1000, 0 \le...原创 2019-03-13 21:47:21 · 310 阅读 · 0 评论 -
子树的节点个数 计蒜客(递归)
问题描述问题描述有一个棵树,树上有 n 个结点。结点的编号分别为 1…n,其中 1 是树的根结点。现在希望你帮忙计算每个结点作为根结点的子树分别有多少结点。输入格式第一行输入一个数字 n,代表树上结点的个数。(2≤n≤1000)接下来的 n−1 行,每行俩个数字 a,b,代表结点 a 到结点 b 有一条边。输出格式按编号顺序输出每个结点作为根结点的子树,分别有多少结点,中间用空格分开。...原创 2019-03-22 09:54:10 · 594 阅读 · 0 评论 -
计蒜客习题 网络延时 (树的直径)
问题描述,或者通过其他网络间接连通。 为了测试组建的网路的性能,假设相邻的路由之间的数据传输需要一单位时间,现在需要知道任意两个路由之间传输数据最多需要多长时间。输入格式第一行一个整数 n(2≤n≤50000) 表示网络中路由个数。接下来 n - 1 行,每行输入 u,v(1≤u,v≤n) ,表示路由 u, v 相连。输出格式输出一行表示答案。样例输入86 33 73 47...原创 2019-03-22 15:05:16 · 198 阅读 · 0 评论 -
计蒜客 圣诞树(堆优化dijkstra)
题目描述圣诞节快到了,蒜头君准备做一棵大圣诞树。这棵树被表示成一组被编号的结点和一些边的集合,树的结点从 1 到 n 编号,树的根永远是 1。每个结点都有一个自身特有的数值,称为它的权重,各个结点的权重可能不同。对于一棵做完的树来说,每条边都有一个价值 ve,若设这条边 e 连接结点 i 和结点 j,且 i 为 j的父结点(根是最老的祖先),则该边的价值ve=sj*we,sj表示结点 j 的所...原创 2019-03-27 18:10:50 · 341 阅读 · 0 评论 -
节点的最近公共祖先(LCA倍增法)
问题描述树是一种很常见的数据结构。现在蒜头君面临一个问题,在一个有 n 个节点的树上,节点编号分别是1…n。蒜头想知道一些节点之间的最近公共祖先是那些节点。输入格式第一行输入一个整数 n(2≤n≤10,000),表示树上有 n 个节点。接下来的 n−1 行,每行输入俩个整数 a,b(1≤a,b≤n)代表节点 a,b 之间有一条 a 到 b 边,a 是 b 的父亲。接下来输入一个整数 q,...原创 2019-04-12 16:50:39 · 270 阅读 · 0 评论 -
威武山上的分配-计蒜客
问题描述每年过年的时候,座山雕都会给兄弟们分银子,分银子之前,座山雕允许大伙儿发表意见,因为要是没法满足所有人的意见,指不定谁要搞出什么大新闻。不过每个人在提意见的时候只能说:“我认为 A 分的银子应该比 B 多!”。座山雕决定要找出一种分配方案,满足所有人的意见,同时使得所有人分得的银子总数最少,并且每个人分得的银子最少为 100两。输入格式第一行两个整数 n,m(0<n≤10000...原创 2019-04-16 20:33:24 · 229 阅读 · 0 评论 -
受欢迎的蒜头 计蒜客
问题描述受欢迎的蒜头思路tarjan算法 + 缩点先把求出一个图的各个强连通分量,(使用tarjan算法),接着用缩点的形式构建一个有向无环图(把各个强连通分量看成一个点,利用点与点之间的关系,构建一个强连通分量之间的有向图,而且这个图一定是无环的图)然后分析这个有向无环图的出入度情况,出度为0,入度不为0,那这个强连通分量里的点是可能被所有的点到达的ac代码#include <...原创 2019-04-25 20:10:56 · 188 阅读 · 0 评论 -
判定欧拉回路 计蒜客
分析一个无向图如果是欧拉回路,那每个的点的度数都是偶数所有点是在同一个连通分量中,用并查集来表示的话,就是所有的点都只有一个爹。ac代码#include <cstdio>#include <cstring>const int MAX_N=1001;int degree[MAX_N],fa[MAX_N];int n,m,f1=1,f2=1;int g...原创 2019-04-23 20:26:29 · 190 阅读 · 0 评论