和倍增法求lca差不多,维护每个点往上跳2^i步能到达的点,以及之间的边的最大值和次大值,先求出最小生成树,对于每个非树边枚举其端点在树上的路径的最大值,如果最大值和非树边权值一样则找次大值,然后维护答案即可。 代码 ...
分类:
其他好文 时间:
2016-05-19 21:02:43
阅读次数:
131
良心的题解↓ http://z55250825.blog.163.com/blog/static/150230809201412793151890/ tarjan的时候如果是树边则做树形DP(遇到环就无视),最后在tarjan回溯前扫一遍当前点为“最高点”的环,进行环上DP,这个环上DP是$O(n^ ...
分类:
其他好文 时间:
2016-05-18 21:54:46
阅读次数:
241
原文地址:树边,前向边,后向边,横叉边
树边,前向边,后向边,横叉边,应该说,不是一个图本身有的概念,应该是图进行DFS时才有的概念。图进行DFS会得到一棵DFS树(森林),在这个树上 才有了这些概念。对图进行DFS,可以从任意的顶点开始,遍历的方式也是多样的,所以不同的遍历会得到不同的DFS树,进而产生不同的树边,前向边,后向 边,横叉边。所以这4种边,是一个相对的概念。
在图的遍历...
分类:
其他好文 时间:
2016-05-12 22:02:37
阅读次数:
189
4033: [HAOI2015]T1
Time Limit: 10 Sec Memory Limit: 256 MB
Submit: 819 Solved: 375
[Submit][Status][Discuss]
Description
有一棵点数为 N 的树,树边有边权。给你一个在 0~ N 之内的正整
数 K ,你要在这棵树中选择 K个点,将其染成黑色,并将其他 的
...
分类:
其他好文 时间:
2016-05-12 11:49:20
阅读次数:
121
题目链接:http://poj.org/problem?id=3177
题意:至少加多少边才能构成边双连通图。
思路:求边双连通分量,对于每一个边双连通分量都看做一个点,也就是进行缩点,然后就构造出一个树,然后在这个树上加多少个树边,能够变成一个双连通图。 加的数量就是( 这棵树总度数为1的结点数 + 1 )/ 2#include
#include
#in...
分类:
其他好文 时间:
2016-05-07 09:38:21
阅读次数:
118
题目大概说一棵树,树边有费用和收益两个属性,求一条收益和最大的路径满足费用和不超过C。 树上任意两点的路径都可以看成是过某一个子树根的路径,显然树分治。 治的时候要解决的一个问题是,找到费用小于等于某个数且收益最大的值。 这个很容易想到用线段树,不过不想写线段树。。 想了想,想到可以先排序,从小到大 ...
分类:
其他好文 时间:
2016-04-28 19:52:09
阅读次数:
214
Description 一个简单的网络系统可以被描述成一棵无根树。每个节点为一个服务器。连接服务器与服务器的数据线则看做 一条树边。两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有服务器(包括这两个服务 器自身)。由于这条路径是唯一的,当路径上的某个服务器出现故障,无法正常运行时 ...
分类:
其他好文 时间:
2016-04-24 18:40:12
阅读次数:
246
Description 一个简单的网络系统可以被描述成一棵无根树。每个节点为一个服务器。连接服务器与服务器的数据线则看做一条树边。两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有服务器(包括这两个服务器自身)。由于这条路径是唯一的,当路径上的某个服务器出现故障,无法正常运行时,数 ...
分类:
其他好文 时间:
2016-04-19 13:46:55
阅读次数:
333
★★☆ 输入文件:haoi2015_t1.in 输出文件:haoi2015_t1.out 简单对比 时间限制:1 s 内存限制:256 MB 【题目描述】 有一棵点数为N的树,树边有边权。给你一个在0~N之内的正整数K,你要在这棵树中选择K个点,将其染成黑色,并将其他的N-K个点染成白色。将所有点染 ...
分类:
其他好文 时间:
2016-04-17 00:26:51
阅读次数:
182
题目大意:一棵带边权无根树,边权代表距离,求距离小于等于k的点对儿数。 题目分析:这两个点之间的路径只有两种可能,要么经过根节点,要么在一棵子树内。定义depth(i)表示点 i 到根节点的距离,belong(i)表示 i 所属的子树。如果路径经过根节点,那么满足depth(i)+depth(j)< ...
分类:
其他好文 时间:
2016-04-15 00:37:06
阅读次数:
150