P1040战争(war)
【题目背景】
遗迹外围的各支队伍在风暴来临前寻找同行者。tfbz 负责记录彼此之间无法调和的旧怨,并依次处理不断送来的合作请求,让每一次联合都不会埋下新的冲突。

【题目描述】
共有 名参与者,编号为 。开始时每名参与者各自组成一个联盟。
其中有 对参与者互相敌对。若两名参与者互相敌对,那么包含他们的两个联盟不能合并。
接下来依次给出 次合并提议。第 次提议希望合并包含 与 的两个联盟。
若这两个联盟中存在一对互相敌对的参与者,则 tfbz 拒绝本次提议,当前的所有联盟保持不变。否则,tfbz 接受本次提议,并将这两个联盟中的全部参与者合并为同一个联盟。
你需要依次判断每次提议能否被接受。
【输入格式】
从文件 中读入数据。
输入的第一行包含一个非负整数 ,表示测试点编号。 表示该测试点为样例。
第二行包含三个正整数 ,分别表示参与者数量、互相敌对的参与者对数与合并提议数量。
接下来 行,每行包含两个不同的正整数 ,表示参与者 与 互相敌对。保证给出的无序点对互不相同。
接下来 行,每行包含两个正整数 ,表示一次合并提议。
【输出格式】
输出到文件 中。
对于每次提议输出一行。若该提议能够被接受,输出 Yes,否则输出 No。
【样例 1 输入】
03 1 21 22 11 3【样例 1 输出】
NoYes{{ render(json.dumps('\clearpage'), 'noi') }}
【样例 2 输入】
08 3 71 22 33 41 24 55 67 83 41 32 4【样例 2 输出】
NoYesYesYesNoYesYes【说明/提示】
【样例 1 解释】
参与者 与 互相敌对,所以第一次提议被拒绝。第二次提议不存在冲突,包含 与 的两个联盟可以合并。
【样例 2 解释】
第一次提议被拒绝。随后若一次提议被接受,对应的两个联盟会整体合并,之后的提议需要按照已经发生的合并继续判断。
【样例 3】
见选手目录下的 和 。
该组样例符合测试点 的数据范围。
【样例 4】
见选手目录下的 和 。
该组样例符合测试点 的数据范围。
【样例 5】
见选手目录下的 和 。
该组样例符合测试点 的数据范围。
【样例 6】
见选手目录下的 和 。
该组样例符合测试点 的数据范围。
【样例 7】
见选手目录下的 和 。
该组样例符合测试点 的数据范围。
【数据范围】
本题采用捆绑测试。
对于全部测试数据,保证 ,,所有参与者编号均在 之间。
| 子任务 | 测试点编号 | 分值 | 特殊性质 | |||
|---|---|---|---|---|---|---|
| 无 | ||||||
| 无 | ||||||
| 无 | ||||||
| A | ||||||
| 无 |
特殊性质 A:保证所有提议中至多有一次提议被拒绝。
【题解】
已公开 1 篇题解,官方题解会优先显示。