您当前处于兼容模式。某些功能在此模式下不可用。我们强烈建议在现代浏览器上切换为标准模式以获得更好的体验。 标准模式 隐藏

#P1066. 【UER #13】连环陷阱

【UER #13】连环陷阱

English Problem Statement

你作为跳蚤王国的地雷专家,需要布置连环地雷陷阱阻击敌军。

地雷被排成了左右两侧,左侧的地雷集合为 $L$,右侧的地雷集合为 $R$,有若干条单向引线连接着左右两侧的地雷,当一颗地雷引爆的时候,从这颗地雷单向连出去的引线连接的地雷也会引爆。保证同侧的地雷之间没有引线,且任意一对地雷之间最多有一条引线。

现在所有的引线的触发方向都没有确定,你的工作就是给每条引线设置一个单向触发方向,使得左侧存在一个地雷 $u$,右侧存在一个地雷 $v$ 满足:

  • 引爆地雷 $u$ 后,右侧除了地雷 $v$ 的其他所有地雷都被引爆,且 $v$ 是否被引爆无所谓。

  • 引爆地雷 $v$ 后,左侧除了地雷 $u$ 的其他所有地雷都被引爆,且 $u$ 是否被引爆无所谓。

请你判断是否存在这样的方案,如果存在的话给出一组具体的构造。

形式化题面:

给定一张简单无向二分图 $G(V,E)$,令左部点集为 $L$,右部点集为 $R$,判断是否存在一种 $E$ 的定向方案,使得存在一对关键点 $(u,v)$ 满足 $u \in L,v \in R$,$u$ 可以到达 $R \setminus \{v\}$,$v$ 可以到达 $L\setminus\{u\}$。

输入格式

本题有多测。

第一行包含一个整数 $T$ 表示数据组数。对于每组数据:

第一行包含三个非负整数 $n_L,n_R,m$ 分别表示 $L$ 的大小,$R$ 的大小,$E$ 的大小。

接下来 $m$ 行,每行两个正整数 $u_i,v_i$ 表示 $E$ 中一条边 $(L_{u_i},R_{v_i})$。

输出格式

对于每组数据,输出一行一个字符串 YesNo 分别表示答案为存在或不存在。

如果答案存在,输出一行长度为 $m$ 的 01 串,第 $i$ 个字符是 1 表示定向为 $L_{u_i}\rightarrow R_{v_i}$,0 表示定向为 $L_{u_i}\leftarrow R_{v_i}$,然后输出一行两个整数 $u,v$。

3
2 2 2
1 1
2 2
5 3 8
1 1
1 2
2 3
3 1
3 3
4 1
4 2
5 1
5 3 7
1 1
1 2
2 3
3 1
3 3
4 1
4 2
Yes
10
1 2
Yes
01110000
2 3
No

数据范围

保证对于所有数据,$1\le T \le 10^3, 1\le n_L,n_R,\sum n_L,\sum n_R \le 10^5,0\le \sum m \le 3\times 10^5,1\le u_i \le n_L,1\le v_i\le n_R$。

子任务编号 特殊性质 分值
$1$ $n_L,n_R,m \leq 10$ $20$
$2$ $m < n_L+n_R-1$ $20$
$3$ $m \geq n_L+n_R-1$ $20$
$4$ $40$

时间限制:$\texttt{1s}$

空间限制:$\texttt{512MB}$