AT_abc244_g [ABC244G] Construct Good Path
题目描述
给定一个包含 $N$ 个顶点和 $M$ 条边的简单(无自环且无重边)且连通的无向图。
对于 $i = 1, 2, \ldots, M$,第 $i$ 条边连接顶点 $u_i$ 和顶点 $v_i$。
满足以下两个条件的整数序列 $(A_1, A_2, \ldots, A_k)$ 被称为长度为 $k$ 的**路径**:
- 对于所有 $i = 1, 2, \ldots, k$,都有 $1 \leq A_i \leq N$。
- 对于所有 $i = 1, 2, \ldots, k-1$,顶点 $A_i$ 和顶点 $A_{i+1}$ 之间有一条边直接相连。
空序列也被视为长度为 $0$ 的路径。
给定一个仅由 $0$ 和 $1$ 组成的长度为 $N$ 的字符串 $S = s_1s_2\ldots s_N$。当路径 $A = (A_1, A_2, \ldots, A_k)$ 满足以下条件时,称路径 $A$ 是关于 $S$ 的**好路径**:
- 对于所有 $i = 1, 2, \ldots, N$,满足:
- 如果 $s_i = 0$,则 $A$ 中包含 $i$ 的次数为偶数。
- 如果 $s_i = 1$,则 $A$ 中包含 $i$ 的次数为奇数。
在本题的约束下,保证至少存在一条长度不超过 $4N$ 的关于 $S$ 的好路径。请输出一条长度不超过 $4N$ 的关于 $S$ 的好路径。
输入格式
输入以如下格式从标准输入给出。
> $N$ $M$
> $u_1$ $v_1$
> $u_2$ $v_2$
> $\vdots$
> $u_M$ $v_M$
> $S$
输出格式
请输出一条长度不超过 $4N$ 的关于 $S$ 的好路径。具体格式如下:
第一行输出路径长度 $K$,第二行输出路径的每个元素,空格分隔。
> $K$
> $A_1$ $A_2$ $\ldots$ $A_K$
说明/提示
## 约束
- $2 \leq N \leq 10^5$
- $N-1 \leq M \leq \min\{2 \times 10^5, \frac{N(N-1)}{2}\}$
- $1 \leq u_i, v_i \leq N$
- 给定的图是简单且连通的
- $N, M, u_i, v_i$ 均为整数
- $S$ 是仅由 $0$ 和 $1$ 组成的长度为 $N$ 的字符串
## 样例解释 1
路径 $(2, 5, 6, 5, 6, 3, 1, 3, 6)$ 的长度不超过 $4N$,并且:
- 包含 $1$ 的次数为奇数($1$ 次)
- 包含 $2$ 的次数为奇数($1$ 次)
- 包含 $3$ 的次数为偶数($2$ 次)
- 包含 $4$ 的次数为偶数($0$ 次)
- 包含 $5$ 的次数为偶数($2$ 次)
- 包含 $6$ 的次数为奇数($3$ 次)
因此,这是关于 $S = 110001$ 的好路径。
## 样例解释 2
空路径 $()$ 是关于 $S = 000000$ 的好路径。也可以输出如 $(1, 2, 3, 1, 2, 3)$ 等路径,均为正确答案。
由 ChatGPT 4.1 翻译