CF758B Blown Garland
题目描述
世界上没有什么是永恒的,Kostya 在 1 月 7 日那天看到四色彩灯串部分熄灭时明白了这一点。
现在他想要更换坏掉的灯泡,但他不知道每种颜色需要准备多少灯泡。题目保证每种颜色至少有一个灯泡仍然亮着。
已知彩灯串中有四种颜色的灯泡:红色、蓝色、黄色和绿色。彩灯串的排列如下:任意连续的四个灯泡中,不会出现相同颜色的灯泡。例如,彩灯串可能是“RYBGRYBGRY”、“YBGRYBGRYBG”、“BGRYB”,但不可能是“BGRYG”、“YBGRYBYGR”或“BGYBGY”。字母代表颜色:'R' 表示红色,'B' 表示蓝色,'Y' 表示黄色,'G' 表示绿色。
根据每种颜色至少有一个工作灯泡的信息,计算每种颜色坏掉的灯泡数量。
输入格式
第一行包含一个字符串 $s$($4 \leq |s| \leq 100$),描述彩灯串,第 $i$ 个字符表示从彩灯串起始的第 $i$ 个灯泡的颜色:
- 'R' — 红色灯泡,
- 'B' — 蓝色灯泡,
- 'Y' — 黄色灯泡,
- 'G' — 绿色灯泡,
- '!' — 坏掉的灯泡。
字符串 $s$ 不包含上述五种字符以外的其他字符。
保证在给定的字符串中,'R'、'B'、'Y'、'G' 四个字母每个至少出现一次。
保证字符串 $s$ 是一串有部分灯泡熄灭的合法彩灯串,也就是说,比如“GRBY!!!B”不会出现在输入数据中。
输出格式
仅输出一行,包含四个整数 $k_r, k_b, k_y, k_g$,分别表示坏掉的红色、蓝色、黄色和绿色灯泡的数量。
说明/提示
在第一个示例中没有坏掉的灯泡。
在第二个示例中,显然有一个蓝色灯泡坏掉了,因为根据题意,不可能有其他颜色的灯泡在其位置。
由 ChatGPT 5 翻译