标签:图论 NOIP 路径 mid 差分 --- 长度 树上 浅析
3.LCA的综合运用
(1)树上差分
在序列中,我们定义其前缀和与差分序列,把区间的增减转化为左端点加1,右端点减1,根绝差分序列的前缀和是原序列这一原理,在树上也可以进行类似的简化,其中“区间操作”对应“路径操作”,“前缀和”对应“子树和”
经典模型:给定一张无向图和一棵生成树,求每条“树边”被“非树边”覆盖了多少次
解决方案:树上差分,给树上每一个节点一个初始为0的权值,然后对每条非树边(x,y),令x权值加1,y权值加1,lca(x,y)的权值减2,最后对这棵生成树进行一次dfs,求出f[x]表示以x为根的子树中各节点的权值之和。f[x]就是x与它的父节点之间的“树边”被覆盖的次数
利用树上差分快速求出树上一点在几条给定路径上的模板:[USACO15DEC]Max Flow P
下面我们利用这个模板题所学到的树上差分技巧,分析 noip中是如何运用的呢?
t1.[NOIP2015 提高组] 运输计划 【lca+树上差分+二分答案】
题意:在一棵带权的树上有m条路径,清零一条边的边权使得m条路径的最大值最小
分析:
(1)最长路径最短--->二分--->二分这个最长路径最小值,统计长度>=mid的路径能否在删边后满足长度小于等于mid (求解转判定)
(2)删什么边?--->思考:对于现有的所有长度>=mid的路径,都是不合法的,都需要删边处理
--->得出结论:被所有长度>=mid的路径经过且长度尽量长的边
(3)具体如何统计经过次数?---树上差分!
标签:图论,NOIP,路径,mid,差分,---,长度,树上,浅析 来源: https://blog.csdn.net/m0_59459037/article/details/120594037
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。