CF758B.Blown Garland

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Blown Garland

题目描述

世界上没有什么是永恒的,Kostya 在 1 月 7 日那天看到四色彩灯串部分熄灭时明白了这一点。

现在他想要更换坏掉的灯泡,但他不知道每种颜色需要准备多少灯泡。题目保证每种颜色至少有一个灯泡仍然亮着。

已知彩灯串中有四种颜色的灯泡:红色、蓝色、黄色和绿色。彩灯串的排列如下:任意连续的四个灯泡中,不会出现相同颜色的灯泡。例如,彩灯串可能是“RYBGRYBGRY”、“YBGRYBGRYBG”、“BGRYB”,但不可能是“BGRYG”、“YBGRYBYGR”或“BGYBGY”。字母代表颜色:'R' 表示红色,'B' 表示蓝色,'Y' 表示黄色,'G' 表示绿色。

根据每种颜色至少有一个工作灯泡的信息,计算每种颜色坏掉的灯泡数量。

输入格式

第一行包含一个字符串 ss4s1004 \leq |s| \leq 100),描述彩灯串,第 ii 个字符表示从彩灯串起始的第 ii 个灯泡的颜色:

  • 'R' — 红色灯泡,
  • 'B' — 蓝色灯泡,
  • 'Y' — 黄色灯泡,
  • 'G' — 绿色灯泡,
  • '!' — 坏掉的灯泡。

字符串 ss 不包含上述五种字符以外的其他字符。

保证在给定的字符串中,'R'、'B'、'Y'、'G' 四个字母每个至少出现一次。

保证字符串 ss 是一串有部分灯泡熄灭的合法彩灯串,也就是说,比如“GRBY!!!B”不会出现在输入数据中。

输出格式

仅输出一行,包含四个整数 kr,kb,ky,kgk_r, k_b, k_y, k_g,分别表示坏掉的红色、蓝色、黄色和绿色灯泡的数量。

说明/提示

在第一个示例中没有坏掉的灯泡。

在第二个示例中,显然有一个蓝色灯泡坏掉了,因为根据题意,不可能有其他颜色的灯泡在其位置。

由 ChatGPT 5 翻译

样例

RYBGRYBGR
0 0 0 0
!RGYB
0 1 0 0
!!!!YGRB
1 1 1 1
!GB!RG!Y!
2 1 1 0

在线编程 IDE

建议全屏模式获得最佳体验