模板链式前向星
题面描述
链式前向星模板题,读入 n 个点,m 条边,以及 flag,若flag==1 则图有向,否则无向。对每个点输出它的每一条边。
链式前向星存储:
vector 存储树,图。
vector<vector<int> > e(100);
加边
e.push_back(b);
存权值
e.push_back();
树
题目描述
在这个问题中,给定一个值 �S 和一棵树。在树的每个节点有一个正整数,问有多少条路径的节点总和达到 �S。路径中节点的深度必须是升序的。假设节点 11 是根节点,根的深度是 00,它的儿子节点的深度为 11。路径不必一定从根节点开始。
dfs搜索,走每一个路径
树的重心的性质
1.
树中所有点到某个点的距离和中,到重心的距离和是最小的,如果有两个重心,他们的距离和一样。
2.
把两棵树通过一条边相连,新的树的重心在原来两棵树重心的连线上。
3.
一棵树添加或者删除一个节点,树的重心最多只移动一条边的位置。
4.
一棵树最多有两个重心,且相邻。