#P10298. [CCC 2024 S4] Painting Roads
[CCC 2024 S4] Painting Roads
题目描述
Kitchener 市的市长 Alanna 成功地改进了该市的道路规划。然而,来自 RedBlue 市的一位售货员仍然抱怨道路的颜色不够丰富。Alanna 的下一个任务就是粉刷一些道路。
Kitchener 市的道路规划可以表示为 个十字路口和 条道路,第 条道路连接第 个十字路口和第 个十字路口。一开始所有道路都是灰色的。Alanna 想要把一些道路染成红色或者蓝色,满足以下条件:
- 对于每一条灰色道路,假设其连接十字路口 和十字路口 ,一定存在一条从十字路口 到十字路口 的路径,满足路径上的道路颜色红色和蓝色交替出现,任何道路都不是灰色的。
为了降低城市的支出,Alanna 希望尽可能少地对道路进行染色。请帮助 Alanna 设计一个符合要求的染色方案。
输入格式
输入的第一行包含两个整数 和 ()。
接下来 行中的第 行包含两个整数 和 表示存在一条连接十字路口 和十字路口 的道路(,)。
任意两个十字路口之间至多存在一条道路。
输出格式
输出一个长度为 的字符串,表示染色的方案。第 个字符表示第 条道路的颜色,R
表示红色,B
表示蓝色,G
表示灰色(未染色)。
注意你必须在满足条件的情况下最小化染色的道路数目。如果存在多个这样的染色方案,输出任意一个。
5 7
1 2
2 4
5 2
4 5
4 3
1 3
1 4
BRGBBGG
4 2
1 2
3 4
BB
提示
【样例 1 解释】
十字路口以及有效的道路的示意图如下所示,该方案最小化了染色道路的数量。请注意,每条道路上的颜色显示为 R(红色)、B(蓝色)或 G(灰色)。
所有为染色的道路都满足条件:
- 第二条路标记为 连接了十字路口 和 ,路径 上的道路被染上红色、蓝色。
- 第三条路标记为 连接了十字路口 和 ,路径 上的道路被染上红色、蓝色、红色。
- 第五条路标记为 连接了十字路口 和 ,路径 上的道路被染上蓝色、红色。
【样例 2 解释】
请注意 Kitchener 的道路可能不是连通的。
【数据范围】
本题采用捆绑测试。
对于所有数据,保证 ,,。
下面的表格显示了 分的分配方案:
分值 | 附加条件 |
---|---|
对任意 存在一条连接 和 的道路(还可能存在其他道路) | |
图连通并且 | |
任何道路都不同时属于至少两个简单环(见下文定义) | |
无 |
定义:若用 表示一条连接 和 的道路,则称 且所有 互不相同是序列 $w_1 \leftrightarrow w_2 \leftrightarrow \cdots \leftrightarrow w_k \leftrightarrow w_1$ 为简单环。