P7737

[NOI2021] 庆典

NOI/NOI+/CTSC

题目描述

C 国是一个繁荣昌盛的国家,它由 nn 座城市和 mm 条有向道路组成,城市从 11 到 nn 编号。如果从 xx 号城市出发,经过若干条道路后能到达 yy 号城市,那么我们称 xx 号城市可到达 yy 号城市,记作 x⇒yx\Rightarrow y。C 国的道路有一个特点:对于三座城市 xx,yy,zz,若 x⇒zx\Rightarrow z 且 y⇒zy\Rightarrow z,那么有 x⇒yx\Rightarrow y 或 y⇒xy\Rightarrow x。

再过一个月就是 C 国成立的千年纪念日,所以 C 国的人民正在筹备盛大的游行庆典。目前 C 国得知接下来会有 qq 次游行计划,第 ii 次游行希望从城市 sis_i 出发,经过若干个城市后,在城市 tit_i 结束,且在游行过程中,一个城市可以被经过多次。为了增加游行的乐趣,每次游行还会临时修建出 kk(0≤k≤20 \le k \le 2)条有向道路专门供本次游行使用,即其它游行计划不能通过本次游行修建的道路。

现在 C 国想知道,每次游行计划可能会经过多少座城市。

注意:临时修建出的道路可以不满足 C 国道路原有的特点。

输入格式

第一行包含四个整数 n,m,q,kn,m,q,k,分别表示城市数、道路数、游行计划数以及每次游行临时修建的道路数。

接下来 mm 行,每行包含两个整数 u,vu,v,表示一条有向道路 u→vu\rightarrow v。

接下来 qq 行,每行前两个整数 si,tis_i,t_i,表示每次游行的起点与终点;这行接下来有 kk 对整数 a,ba,b,每对整数表示一条临时添加的有向道路 a→ba\rightarrow b。

数据保证,将 C 国原有的有向道路视为无向道路后,所有城市可以互达。

输出格式

对于每次询问,输出一行一个整数表示答案。如果一次游行从起点出发无法到达终点,输出 00 即可。

输入输出样例

输入样例 #1

text
5 6 4 1
1 2
1 3
1 4
2 5
4 5
5 4
1 4 5 1
2 3 5 3
1 2 5 2
3 4 5 1

输出样例 #1

text
4
4
4
0

说明/提示

【样例解释 #1】

第 11 次计划,起点为 11 号点,终点为 44 号点,临时修建道路为 5→15\rightarrow1,最终可能经过的城市编号为 {1,2,4,5}\{1,2,4,5\}。

第 22 次计划,起点为 22 号点,终点为 33 号点,临时修建道路为 5→35\rightarrow3,最终可能经过的城市编号为 {2,3,4,5}\{2,3,4,5\}。

第 33 次计划,起点为 11 号点,终点为 22 号点,临时修建道路为 5→25\rightarrow2,最终可能经过的城市编号为 {1,2,4,5}\{1,2,4,5\}。

第 44 次计划,起点为 33 号点,终点为 44 号点,临时修建道路为 5→15\rightarrow1,最终从 33 号点出发无法到达 44 号点。

【样例 #2】

见附件 celebration/celebration2.in 与 celebration/celebration2.ans。

该样例约束与测试点 5∼75 \sim 7 一致。

【样例 #3】

见附件 celebration/celebration3.in 与 celebration/celebration3.ans。

该样例约束与测试点 10∼1110 \sim 11 一致。

【样例 #4】

见附件 celebration/celebration4.in 与 celebration/celebration4.ans。

该样例约束与测试点 15∼1615 \sim 16 一致。

【样例 #5】

见附件 celebration/celebration5.in 与 celebration/celebration5.ans。

该样例约束与测试点 20∼2520 \sim 25 一致。

【数据范围】

对于所有测试点,1≤n,q≤3×1051 \le n,q \le 3 \times {10}^5,n−1≤m≤6×105n - 1 \le m \le 6 \times {10}^5,0≤k≤20 \le k \le 2。

测试点编号n,q≤n, q \lekk特殊性质
1∼41 \sim 455=0= 0无
5∼75 \sim 710001000≤2\le 2无
8∼98 \sim 93×1053 \times {10}^5=0= 0m=n−1m = n - 1
10∼1110 \sim 113×1053 \times {10}^5=1= 1m=n−1m = n - 1
12∼1412 \sim 143×1053 \times {10}^5=2= 2m=n−1m = n - 1
15∼1615 \sim 163×1053 \times {10}^5=0= 0无
17∼1917 \sim 193×1053 \times {10}^5=1= 1无
20∼2520 \sim 253×1053 \times {10}^5=2= 2无

🚀 提交评测

登录并绑定洛谷账号后即可在此在线提交代码并实时评测。

前往登录

💡 题解 (0)

登录后即可撰写并分享您的解题思路。

暂无题解,快来发布全站第一篇题解吧!

💬 题目讨论 (0)

登录后可以发起或参与讨论。

暂无讨论内容。

📊 题目信息

题号P7737
难度NOI/NOI+/CTSC
时间限制2000 ms
内存限制1024 MB
题目来源洛谷题库
算法标签
线段树广度优先搜索 BFS拓扑排序Tarjan最近公共祖先 LCA树链剖分虚树

⚡ 快速操作

在线提交代码在洛谷打开原题 ↗