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 翻译