摘要:
题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=2586题意 :给一颗树和每条边的边权, 查询树上两点路径上的边权之和思路 :十分裸, 先将查询转化查询节点x到节点y的路径上的边权和, 等于 x到它们最近公共祖先的边权和 + y到他们公共祖先的边权和... 阅读全文
摘要:
基本思路是树状数组, 但是有重复的数, 要保证在一个区间内只更新过一次所做的处理是用先遍历记录数字的数组a, 用数-位置数组 mp[a[i]] 来记录每个数第一次出现的位置并该点更新这个操作对应的代码1 for(int i = 1; i <= n; i++) {2 if(mp[a[i]] =... 阅读全文
摘要:
LCA -Least Common Ancestors 一颗树上两个节点的最近公共祖先求解这个问题, 有这样一种方法在两点的路径上找深度最小的点先第一遍DFS一颗树, 得到一个按节点访问顺序记录的序列seq[NODE_NUMBER]void Dfs(int u, int fa, int dep){ ... 阅读全文