#P10875. [COTS/CETS 2022] 游戏 M

    ID: 10346 远端评测题 3000ms 500MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>2022O2优化CEOI(中欧)TarjanCOCI(克罗地亚)

[COTS/CETS 2022] 游戏 M

题目背景

译自 Izborne Pripreme 2022 (Croatian IOI/CEOI Team Selection) D2T2。3s,0.5G\texttt{3s,0.5G}

题目描述

圆和焰在玩游戏。

有一张 NN 个节点的无向图,焰会依次向图中添加 MM 条边。

焰有 QQ 个询问,每次询问给定 u,vu,v,问:至少添加前多少条边,才能使得 u,vu,v 间没有割边(换言之,割去任意一条边,都不影响 u,vu,v 的连通性)。特别地,如果 u,vu,v 始终不连通或者始终有割边,则输出 1-1

圆准备要去军训了,所以找来了你解决这个问题。

输入格式

第一行,两个整数 N,MN,M,含义见题面;

接下来 MM 行,第 ii 行包含两个整数 si,tis_i,t_i,表示第 ii 条边为 (si,ti)(s_i,t_i)

(M+2)(M+2) 行,一个整数 QQ,含义见题面;

接下来 QQ 行,每行两个整数 u,vu,v,描述一个询问。

输出格式

输出 QQ 行,每行一个整数,表示询问的答案。

3 3
1 2
2 3
3 1
1
1 2
3
3 4
1 2
1 2
2 3
2 3
3
1 2
2 3
3 1
2
4
4
6 7
1 2
2 3
3 4
2 5
3 5
4 5
1 3
5
1 3
2 3
4 5
1 4
2 6
7
5
6
7
-1

提示

对于 100%100\% 的数据,保证:

  • 2N3×1052\le N \le 3\times 10^50M3×1050\le M\le 3\times 10^51Q3×1051\le Q\le 3\times 10^5
  • sitis_i\neq t_iuvu\neq v
  • 1u,v,si,tiN1\le u,v,s_i,t_i\le N
子任务编号 分值 约束
11 1010 Q=1Q=1
22 2020 2M2\mid M(s2i1,t2i1)=(s2i,t2i)(s_{2i-1},t_{2i-1})=(s_{2i},t_{2i})
33 3030 N,M5000N,M\le 5\, 000
44 4040 无额外约束