#P13906. [2021年省选前集训]绿色

    ID: 13113 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 9 上传者: 标签>CF2700图论虚树LCA树形DP差分动态规划树链剖分

[2021年省选前集训]绿色

甲城是一座新兴城市,城里开设了 nn 座工厂,分属 kk 家单位,每家单位至少有一座工厂。其中,第 ii 座工厂属于第 cic_i 家单位,有 wiw_i 名工人。

目前,甲城的路网还比较不发达。城内有 mm 条道路,每条道路的两端是不同的工厂。如果将工厂视作图的点,道路视作图的边,那么这张图是仙人掌。

  • 仙人掌,就是一张无向连通图,其中每一条边都属于至多一条简单回路。

现在甲城准备开通该城第一条公交线路。目前已经决定了:

  • 这条公交线路将连接两座不同的工厂,且两座工厂属于同一单位。
  • 这条公交线路在现有道路上行驶,且往返的路线是一致的。
  • 这条公交线路不会重复经过同一座工厂。

一条公交线路的负荷,是该线路起点、终点和途经的所有工厂里工人的总数。

我们认为:仅仅将一条公交线路的上行、下行方向互换,得到的是本质相同的线路;但是,如果两家工厂之间有两条不同道路直接相连,那么经过不同道路的两条公交线路本质不同。

随着生产规模的扩大,该城进行了 qq 次招工活动。每次活动都形如:第 ii 座工厂新招聘了 Δw\Delta w 名工人。除此之外,各厂的工人数量不会变化,各次招工活动不独立

现在,甲城学生算法竞赛协会悬赏 100100 分,请你对于初始的情况和每次招工后的情况,分别计算:在上述条件限制下,所有可能的本质不同线路的负荷之和是多少?由于答案可能会太大,请你对 109+710^9+7 取模。

输入格式

第一行三个正整数 n,m,kn, m, k, 分别表示工厂、道路、单位的数量。

接下来一行 nn 个整数 c1,c2,,cnc_1, c_2, \ldots, c_n, 表示各工厂所属的单位。

接下来一行 nn 个整数 w1,w2,,wnw_1, w_2, \ldots, w_n, 表示各工厂的工人数。

接下来 mm 行每行两个整数 u,vu, v, 表示有一条连接第 u,vu, v 座工厂的道路。

接下来一行一个非负整数 qq, 表示招工的次数。

接下来 qq 行每行两个正整数 i,Δwi, \Delta w, 表示这次招工时,第 ii 座工厂新招聘了 Δw\Delta w 名工人。

输出格式

q+1q+1 行,每行一个整数,分别表示最初和每次招工后,所有满足限制的本质不同线路的负荷之和,对 109+710^9+7 取模后的值。

样例一

input

4 5 2
1 2 1 2
1 2 3 4
1 2
1 2
2 3
2 4
3 4
1
3 1



output

47
52



explanation

总共有 66 条线路:

  1. 11231\to_12\to3, 修改前负荷 66, 修改后负荷 77;
  2. 12231\to_22\to3, 修改前负荷 66, 修改后负荷 77;
  3. 112431\to_12\to4\to3, 修改前负荷 1010, 修改后负荷 1111;
  4. 122431\to_22\to4\to3, 修改前负荷 1010, 修改后负荷 1111;
  5. 242\to4, 修改前、后负荷均为 66;
  6. 2342\to3\to4, 修改前负荷 99, 修改后负荷 1010.

所以修改前总负荷 4747, 修改后总负荷 5252.

样例二

input

4 4 1
1 1 1 1
1 2 3 4
1 2
2 3
3 4
4 1
0



output

90



限制与约定

对于全部数据,2n5×1052\le n\le5\times10^5, n1m2n2n-1\le m\le 2n-2, 1kn1\le k\le n, 0qn0\le q\le n, 1cik1\le c_i\le k, 1wi,Δw1001\le w_i, \Delta w\le 100.

子任务一(1010 分):n100n\le100.

子任务二(2020 分):n105,k5n\le10^5, k\le5.

子任务三(2020 分):m=n1m=n-1.

子任务四(1515 分):w1=w2==wn=1w_1=w_2=\cdots=w_n=1, q=0q=0.

子任务五(2020 分):n105n\le10^5.

子任务六(1515 分):无特殊限制。