#L4237. 「NordicOI 2023」Island Alliances

    ID: 4473 传统题 1000ms 256MiB 尝试: 2 已通过: 1 难度: 8 上传者: 标签>数据结构并查集2023NordicOI图论动态图连通性二分图判定离线处理

「NordicOI 2023」Island Alliances

题目描述
题目译自 NordicOI 2023 T3 「Island Alliances」

在一片广阔的海洋中,有 nn 个岛屿,编号从 11nn,每个岛屿都是一个主权国家。

然而,大量的国家使得外交事务变得非常复杂,所以岛民们决定通过加入更大的(但更少)国家来简化事情。这项努力事实证明比说起来容易,因为有 mm 对岛屿居民相互不信任,拒绝成为同一国家的一部分。

岛民们向你发送了 qq 个提案,你应该按顺序处理。第 ii 个提案要求包含岛屿 aia_i 的国家与包含岛屿 bib_i 的国家合并。如果两个国家包含一对居民相互不信任的岛屿,则应拒绝该提案,否则应批准该提案,并且两个国家中的所有岛屿将从此成为同一国家的一部分。

请帮助岛民们弄清楚哪些提案应该被拒绝,哪些应该被批准!


输入格式

输入第一行包含三个整数 nn, mm, qq,分别表示岛屿的数量、不信任的岛屿对的数量和提案的数量。

接下来 mm 行,第 ii 行包含两个整数 uiu_i, viv_i (1ui,vin,uivi)(1 \leq u_i, v_i \leq n, u_i \neq v_i),表示岛屿 uiu_iviv_i 的居民相互不信任。每对 (ui,vi)(u_i, v_i) 最多会被列出一次。

接下来 qq 行,其中第 ii 行包含两个整数 aia_i, bib_i (1ai,bin)(1 \leq a_i, b_i \leq n),描述第 ii 个提案。保证没有提案会要求一个国家与自己合并,这意味着在你收到第 ii 个提案时,aia_ibib_i 一定属于不同的国家。


输出格式

输出 qq 行,其中第 ii 行应该是 REFUSE,如果第 ii 个提案应该被拒绝,或者 APPROVE,如果第 ii 个提案应该被批准。


样例 1

输入:

3 1 2
1 2
2 1
1 3

输出:

REFUSE
APPROVE

解释:

  • 初始状态:每个岛屿都是一个独立国家
  • 提案1:合并包含岛屿2和岛屿1的国家 → 拒绝,因为岛屿1和2相互不信任
  • 提案2:合并包含岛屿1和岛屿3的国家 → 批准,没有不信任关系冲突

样例 2

输入:

8 3 7
1 2
2 3
3 4
1 2
4 5
5 6
7 8
3 4
1 3
2 4

输出:

REFUSE
APPROVE
APPROVE
APPROVE
REFUSE
APPROVE
APPROVE

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制
1 15 2n5002 \leq n \leq 500, 1m1051 \leq m \leq 10^5, 1q1051 \leq q \leq 10^5
2 17 2n1052 \leq n \leq 10^5, 1m2501 \leq m \leq 250, 1q1051 \leq q \leq 10^5
3 20 2n50002 \leq n \leq 5\,000, 1m50001 \leq m \leq 5\,000, 1q1051 \leq q \leq 10^5
4 23 2n1052 \leq n \leq 10^5, 1m1051 \leq m \leq 10^5, 1q1051 \leq q \leq 10^5;最多只有一个 REFUSE
5 25 2n1052 \leq n \leq 10^5, 1m1051 \leq m \leq 10^5, 1q1051 \leq q \leq 10^5