AT_arc041_d.[ARC041D] 辺彩色
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个包含 N 个顶点和 M 条边的无向图。该图是连通的,不包含自环和重边。每条边从 1 到 M 编号。
初始时,所有边都没有被染色。高桥君希望第 i 条边被染成颜色 ci。其中,ci 为 r(红色)或 b(蓝色)。高桥君可以按如下方式对边进行染色:
- 首先,任选一个顶点作为起点。之后,可以任意多次重复“移动到相邻顶点”这一步骤。
- 每次移动时,经过的边会被染色。第奇数次移动时染成红色,第偶数次移动时染成蓝色。
- 如果经过的边已经被染色,则会被新颜色覆盖。
请判断是否存在一种移动方式,使得所有边都被染成目标颜色。
输入格式
输入从标准输入中给出,格式如下:
N M
a1 b1 c1
a2 b2 c2
⋮
aM bM cM
- 第 1 行包含两个整数 N(2≤N≤2000)和 M(1≤M≤2000),表示顶点数和边数。
- 接下来的 M 行,每行包含两个整数 ai、bi(1≤ai<bi≤N)和一个字符 ci,表示第 i 条边连接顶点 ai 和 bi,且目标颜色为 ci(
r或b)。- 对于任意 i=j,有 ai=aj 或 bi=bj。
- 图是连通的。
输出格式
如果可以使所有边都被染成目标颜色,则输出 Yes,否则输出 No。输出后需换行。
输入输出样例
输入#1
6 5 1 2 r 2 3 b 3 4 r 4 5 b 5 6 r
输出#1
Yes
输入#2
4 3 1 2 r 1 3 r 1 4 r
输出#2
Yes
输入#3
3 3 1 2 b 1 3 b 2 3 b
输出#3
No
说明/提示
样例解释 1
例如,可以选择顶点 1 作为起点,按照图中的方式对边进行染色。

样例解释 2
例如,可以选择顶点 2 作为起点,按照图中的方式对边进行染色。被覆盖的颜色用虚线表示。

由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?