돌림판 (Large)

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

지훈이는 경품 행사에 쓸 돌림판을 준비했다. 원형판은 NN등분되어 있고, 각 칸은 빨강, 초록, 파랑 중 하나로 칠해져 있다. 참가자는 세 색 중 하나를 고르고, 돌림판을 돌려 스피너가 멈춘 칸의 색과 자신이 고른 색이 같은 사람 모두가 상품을 받는다. NN개의 칸 중 빨강이 aa개, 초록이 bb개, 파랑이 cc개라면 각 색이 걸릴 확률은 각각 a/Na/N, b/Nb/N, c/Nc/N이다. 즉 어느 칸에 어떤 색이 칠해졌는지 모른다면 세 색이 걸릴 확률은 모두 같다.

지훈이가 참가자들이 고른 색을 조사해 보니 세 색 중 특정 색을 유난히 많이 골랐다. 이유를 찾아보니 어떤 사람이 돌림판을 보고 가장 많이 칠해진 색을 친분이 있는 몇몇 참가자에게 알려준 것이었다. 그래서 지훈이는 돌림판의 색을 모두 바꾸려고 한다.

칸에는 시계방향으로 1번부터 NN번까지 번호를 매긴다. ii번 칸의 왼쪽 칸은 i1i-1번 칸, 오른쪽 칸은 i+1i+1번 칸이고, 1번 칸의 왼쪽 칸은 NN번 칸, NN번 칸의 오른쪽 칸은 1번 칸이다.

색을 한 번 바꾸는 과정은 다음과 같다. 모든 칸의 색은 동시에 바뀌며, 각 칸 PP마다 PP의 왼쪽 칸, PP 자신, PP의 오른쪽 칸에 칠해진 세 색을 본다.

  1. 세 색이 모두 같거나 모두 다르면 PP에 칠해진 색을 파랑으로 바꾼다.
  2. 그렇지 않으면 세 칸 중 두 칸이 XX 색, 남은 한 칸이 그와 다른 YY 색인 상황이다.
  3. (X,Y)(X, Y)가 (빨강, 초록), (초록, 파랑), (파랑, 빨강) 중 하나이면 PP에 칠해진 색을 빨강으로 바꾸고, 그렇지 않으면 초록으로 바꾼다.

지훈이는 이 과정을 모두 KK번 반복했다. KK번을 마친 뒤 돌림판에 각 색이 몇 칸씩 칠해져 있는지 구하라.

입력

첫째 줄에 NNKK가 공백으로 구분되어 주어진다.

둘째 줄에 길이가 NN인 문자열이 주어진다. 이 문자열은 1번 칸부터 시계방향으로 각 칸에 칠해진 색을 나열한 것이며, 빨강은 R, 초록은 G, 파랑은 B로 주어진다.

1N1000001 \le N \le 100000, 1K1091 \le K \le 10^9

출력

KK번의 과정을 모두 마친 뒤 빨강으로 칠해진 칸의 수, 초록으로 칠해진 칸의 수, 파랑으로 칠해진 칸의 수를 이 순서대로 공백으로 구분해 한 줄에 출력한다.