#P13166. [GCJ 2017 #1B] Stable Neigh-bors
[GCJ 2017 #1B] Stable Neigh-bors
Description
你非常幸运地拥有 只独角兽。每只独角兽的鬃毛中只包含以下三种颜色中的一种或两种:红色、黄色和蓝色。鬃毛的颜色取决于它包含的具体颜色种类:
- 只有一种颜色的鬃毛,看起来就是那种颜色。例如,只有蓝色鬃毛的鬃毛就是蓝色。
- 同时有红色和黄色鬃毛的鬃毛看起来是橙色。
- 同时有黄色和蓝色鬃毛的鬃毛看起来是绿色。
- 同时有红色和蓝色鬃毛的鬃毛看起来是紫色。
你拥有 、、、、 和 只鬃毛分别为红色、橙色、黄色、绿色、蓝色和紫色的独角兽。
你刚刚建造了一个有 个马厩的圆形马圈,这些马厩首尾相连,每个马厩都与两个其他马厩相邻。你希望将每只独角兽恰好放入一个马厩中。然而,独角兽需要感到稀有和特别,因此,任何两只鬃毛中包含至少一种相同颜色的独角兽都不能相邻。例如,鬃毛为橙色的独角兽不能与鬃毛为紫色的独角兽相邻,因为它们的鬃毛都含有红色。同理,鬃毛为绿色的独角兽不能与鬃毛为黄色的独角兽相邻,因为它们的鬃毛都含有黄色。
你能否将所有独角兽都安置好?如果可以,请给出任意一种可行的安排。
Input Format
输入的第一行为测试用例数 。接下来有 组测试数据,每组数据为一行,包含七个整数:、、、、、 和 。
Output Format
对于每组测试数据,输出一行,格式为 Case #x: y,其中 为测试用例编号(从 1 开始), 为 IMPOSSIBLE(如果无法安排所有独角兽),或者为一个长度为 的字符串,表示独角兽在马厩中的排列顺序,从任意一个马厩开始,顺时针排列。用 R 表示红色鬃毛的独角兽,O 表示橙色,Y 表示黄色,G 表示绿色,B 表示蓝色,V 表示紫色。该排列必须满足题目描述中的所有规则。
如果存在多种可行的排列方式,你可以输出任意一种。
4
6 2 0 2 0 2 0
3 1 0 2 0 0 0
6 2 0 1 1 2 0
4 0 0 2 0 0 2
Case #1: RYBRBY
Case #2: IMPOSSIBLE
Case #3: YBRGRB
Case #4: YVYV
Hint
样例解释
注意,最后两个样例不会出现在 Small 数据集中。
对于样例 1,有多种可行答案;例如,BYBRYR 也是一种可行解。注意,BYRYRB 并不是有效答案,因为马厩是环形的,第一个和最后一个马厩也是相邻的!
对于样例 2,只有三个马厩,每个马厩都与其他两个相邻,因此两只黄色鬃毛的独角兽必须相邻,这是不允许的。
对于样例 3,注意如果按照 Google logo 的颜色顺序(BRYBGR)排列独角兽,并不是有效答案,因为蓝色鬃毛的独角兽会与绿色鬃毛的独角兽相邻,而它们的鬃毛都含有蓝色。
对于样例 4,不能有两只黄色鬃毛的独角兽相邻,也不能有两只紫色鬃毛的独角兽相邻。
数据范围
- 。
- 。
- 。
- 对于每个 ,。
Small 数据集(测试集 1 - 可见)
- 。(每只独角兽的鬃毛只包含一种颜色。)
Large 数据集(测试集 2 - 隐藏)
- 除一般限制外无其他限制。(每只独角兽的鬃毛可能包含一种或两种颜色。)
由 ChatGPT 4.1 翻译
京公网安备 11011102002149号