POJ3417Network 树上差分。
作者:互联网
不知道为什么,我这里poj打不开了。。。
这份题解只有在下无脑的口述(口胡),没有Code。
题意:一棵有N个点的树,再往里面加入M条新边,现在要删掉两条边,要求一条是树边,一条是新边,求方案的数量。
Solution:
同样的先考虑一条新边加入后,树上出现了一个环。
那么如果我们任意删掉不是这个环上的一条树边和这条新边,
可以发现,图仍然连通。
所以可以得到一个信息:
对与一条新边,我想要把它删掉,就必须把 把它加入后形成的环上的树边 给删掉。
换言之,就是只有删掉这样的树边,才会在删掉了这条新边的前提下,对答案造成贡献。
那么,
如果我们把 删一条新边 就必须删对应树边 中的这种对应关系,记为新边对树边的覆盖
反过来思考一下就成了:
对于每一条树边,我们只要算出它被多少新边覆盖,就可以计算答案了。
树上差分十分适合解决这种问题,只需稍微注意一下LCA处的处理即可。
关于答案统计:
对于不被新边覆盖的,贡献为0。
只被一条新边覆盖的,贡献为1。
被大于等于二条新边覆盖的,贡献为新边条数。
No Code 略略略
The End
标签:删掉,树边,新边,差分,贡献,边覆盖,一条,POJ3417Network,树上 来源: https://www.cnblogs.com/Bhllx/p/10616897.html