「POJ-3417」Network
LCA+树上差分,给定一棵树和一些附加边,在其中各删一条使树不连通,求可行的方案数。
题意
给定一棵树和一些附加边,要求在原始边和附加边中各选一条删除,从而使树被分割为至少两个联通块,求可行的方案数。
思路
对于每个给出的附加边求LCA,树上差分,标记其所在的环上的所有边的经过次数。
对于树上每条边的经过次数:
$cnt[i]=0:$ 不属于任何环,此时只要删除该边和任意一条附加边即可,方案数$+m;$
$cnt[i]=1:$ 只属于一个环,删除该边和属于该环的附加边为可行解,方案数$+1;$
$cnt[i]>1:$该边属于多个环,需要删除该边和所在所有边上的附加环才可分割该图,删该树边不存在可行解。
代码
1 |
|