给出一棵树,对于每一个询问,给出2个节点,输出2个节点的距离。输入中有字母,那个是没有用的,不用管。思路:0.选择编号为1的节点作为树的root(注意:有些题的边是单向的,这时候我们要根据节点的入度来确定root, 双向的话一般可以随意选择一个节点作为root)1.dfs1,求出dep和pa[...
分类:
其他好文 时间:
2015-08-18 18:03:10
阅读次数:
157
题目大意:给出N个点,M条边和一个人的起始位置,然后给出一系列操作
操作A: 0 u 询问这个人走到u这个位置需要几分钟
操作B: 1 i w,将第i条边的权值改成w解题思路:第一个操作比较简单,第二个操作的话也不难。
在dfs纪录结点出现的顺序的时候,顺便记录一下每个点的pre,为第二个操作做准备。
执行第二个操作时,先把本来的边改变一下,再用一次dfs将该边以下的边全部该变一下就好了,...
题目大意:给出N个点,和每个点物品的售价,现在有一个商人,要从u点到v点,他想在路上多赚点钱。他可以从一个城市买物品,然后再卖到另一个城市,但买卖只允许一次,且不能回头走
问最多能赚多少解题思路:果然智商捉急了。。
up数组纪录当前点到lca的最大利润
down数组纪录lca到当前点的最大利润
Max数组lca到当前点的最大值
Min纪录当前点到lca的最小值这样的话,执行tarjan的时...
分类:
其他好文 时间:
2015-08-18 01:18:16
阅读次数:
122
题目大意:给出n个点的权值,m条边,2种操作
0 u num,将第u个点的权值改成num
k u v,询问u到v这条路上第k大的权值点解题思路:该点的话直接该,找第k大的话直接暴力#include
#include
#include
using namespace std;#define N 80010
#define M 16001...
分类:
Web程序 时间:
2015-08-18 01:15:59
阅读次数:
146
题目大意:给出一棵N个结点的无根树,现在要在上面加上M条边,问,有多少种破坏方式(破坏一条树边,一条新边),能使这张新图变成至少两部分解题思路:首先,假设添加的边为(u,v),那么u – > lca(u,v) –> v – >u就形成了一个环了,也就是说,每条添加的边都会在树上形成一个环本来树上的每条边都是一条桥的,由于加了新的边了,形成了连通分量了,使得边的性质发生了些变化首先,树边在0个连通分量...
分类:
Web程序 时间:
2015-08-18 01:15:55
阅读次数:
130
题目大意:给出一棵树,3种操作
DIST u,v 询问u到v的距离
KTH k, u, v 询问u到v的路径上的第k大的边的权值解题思路:刚开始以为会爆,结果发现不会
直接暴力存储u到v的路上的所有边,再进行排序,输出第k大的边即可#include
#include #define N 10010struct Edge{
int to, next...
分类:
其他好文 时间:
2015-08-18 01:15:27
阅读次数:
117
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.
According to the definition of LCA on Wikipedia: “The lowest common ancestor is defined
between two node...
分类:
其他好文 时间:
2015-08-16 19:52:31
阅读次数:
105
Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.According to thedefinition of LCA on Wikipedia: ...
分类:
其他好文 时间:
2015-08-16 16:26:47
阅读次数:
96
Network
Time Limit: 2000MS
Memory Limit: 65536K
Total Submissions: 4251
Accepted: 1223
Description
Yixght is a manager of the company called SzqNetwork(SN). Now she's...
分类:
Web程序 时间:
2015-08-15 20:05:32
阅读次数:
127
题目pdf:http://acm.bnu.edu.cn/v3/external/124/12487.pdf
大致题意:
一棵树,一个人从A节点出发,等可能的选任何一条边走,有两个节点B,C求这个人先到达B的概率
思路:
先说结论:只和A的距离有关,先到达B+先到达A的概率 = 1,然后根据距离分配一下就好。
构造性证明:如果B-A-C在一条链上显然就是按距离分配概率,因为链上的支...
分类:
其他好文 时间:
2015-08-15 01:35:45
阅读次数:
204