题目描述
给定一张 n 个点 m 条边的有向图 G,其顶点从 1 到 n 编号。
对于任意两个点 u,v,若从顶点 1 出发到达顶点 v 的所有路径都需要经过顶点 u,则称顶点 u 支配顶点 v。特别地,每个顶点支配其自身。
对于任意一个点 v,我们将图中支配顶点 v 的顶点集合称为 v 的受支配集 Dv。
现在有 q 次互相独立的询问,每次询问给出一条有向边,请你回答在图 G 中加入该条边后,有多少个顶点的受支配集发生了变化。
输入格式
第一行,三个整数 n,m,q,分别表示图中的顶点数、边数,以及询问数。
接下来 m 行,每行两个整数 xi,yi,表示一条有向边从 xi 到 yi。
接下来 q 行,每行两个整数 si,ti,表示每次询问加入的边从 si 到 ti。
数据保证给出的图 G 中,从 1 号点出发能到达所有其他点,并且图中不包含重边与自环。
输出格式
对于每个询问,输出一行,一个整数,表示答案。
6 6 3
1 2
1 3
3 4
4 5
2 6
4 1
5 6
3 2
2 4
1
0
2
见附件中的 dominator/dominator2.in。
见附件中的 dominator/dominator2.ans。
见附件中的 dominator/dominator3.in。
见附件中的 dominator/dominator3.ans。
提示
【样例 #1 解释】
对于原图,六个点的受支配集分别为:D1={1},D2={1,2},D3={1,3},D4={1,3,4},D5={1,3,4,5},D6={1,2,6}。
加入 5→6 后,D6={1,6},其他点受支配集不变。
加入 3→2 后没有点受支配集改变。
加入 2→4 后,D4={1,4},D5={1,4,5},其他点受支配集不变。
【数据范围】
对于所有测试数据:1≤n≤3×103,1≤m≤2×n,1≤q≤2×104。
每个测试点的具体限制见下表:
测试点编号 |
n≤ |
特殊性质 |
1∼2 |
10 |
无 |
3∼6 |
100 |
q≤100 |
7∼9 |
1000 |
m=n−1 |
10∼15 |
q≤2000 |
16∼20 |
3000 |
无 |