卧薪尝胆,厚积薄发。
病毒入侵
Date: Wed Nov 07 17:31:41 CST 2018 In Category: NoCategory

Description:

一张无向图,边有边权,点有 $A,B$ 两个值, $q$ 次询问,每次给出点集 $S$ 和权值 $v$ ,求从 $S$ 中每一个点开始只经过权值不超过 $v$ 的边,求可以到达的点的 $A$ 权值的最大值 $\times$ 权值最大值的点数,和没有被经过的点的 $B$ 值和。
$1\leqslant n\leqslant 300000$

Solution:

看上去非常像 $\text{NOI2018 D1T1}$ ,就是先把所有边排序,把所有询问离线,然后依次加入每条边,用并查集同时维护最大值和最大值出现次数,以及联通块 $B$ 权值和就可以了。

Code:


没有代码
Copyright © 2020 wjh15101051
ღゝ◡╹)ノ♡