R, G, B로 칠해진 원형 배열을 주어진 국소 규칙으로 K번 다시 칠한 뒤, 마지막에 각 색의 개수를 출력한다.
보통5시뮬레이션문자열구현아직 제출이 없습니다시간 제한1초메모리 제한256 MB지훈이는 경품 행사를 열려고 돌림판을 준비했다. 돌림판의 원판은 N등분되어 있고, 각 칸은 빨간색, 초록색, 파란색 중 하나로 칠해져 있다. 행사 규칙은 간단하다. 참가자는 빨간색, 초록색, 파란색 중 하나를 고른다. 돌림판을 돌려서 스피너가 멈춘 칸의 색이 자기가 고른 색과 같은 사람 모두에게 상품을 준다.
원판이 N등분되어 있으므로, N개의 칸 중 빨간색이 a개, 초록색이 b개, 파란색이 c개라면 각 색이 걸릴 확률은 차례대로 a/N, b/N, c/N이다. 즉 어느 칸에 어떤 색이 칠해졌는지 모른다면 이론적으로 세 색이 걸릴 확률은 모두 같다.
지훈이가 참가자들이 고른 색을 조사해 보니 세 색 중 특정 색을 유난히 많이 골랐다. 이유를 찾아보니, 어떤 사람이 돌림판을 미리 보고 가장 많이 칠해진 색을 친분이 있는 참가자 몇 명에게 알려 준 것이었다. 그래서 지훈이는 돌림판의 색을 모두 바꾸려고 한다. 색을 바꾸는 과정은 다음과 같다. 모든 칸의 색은 동시에 바뀐다.
P를 돌림판의 임의의 칸이라고 하자.
X가 빨간색이고 Y가 초록색인 경우, X가 초록색이고 Y가 파란색인 경우, X가 파란색이고 Y가 빨간색인 경우
칸은 원형으로 이어져 있어서 왼쪽 이웃과 오른쪽 이웃도 원판을 한 칸 돌아 정해진다. N=1이면 P의 왼쪽 칸과 오른쪽 칸이 모두 P 자신이고, N=2이면 두 이웃이 같은 칸이다.
지훈이는 이렇게 색을 한 번 바꾸었다. 그래도 불안해서 같은 방법으로 K−1번 더 바꾸었다. 색을 모두 K번 바꾼 뒤 돌림판에 각 색이 몇 칸씩 칠해져 있는지 구하자.
첫째 줄에 N과 K가 공백으로 구분되어 주어진다.
둘째 줄에 길이가 N인 문자열이 주어진다. 이 문자열은 돌림판의 각 칸에 칠해진 색을 시계 방향으로 나타낸 것이다. 빨간색은 R, 초록색은 G, 파란색은 B로 주어진다.
1≤N≤1000, 1≤K≤1000
색을 K번 바꾼 뒤, 빨간색으로 칠해진 칸의 수, 초록색으로 칠해진 칸의 수, 파란색으로 칠해진 칸의 수를 이 순서대로 공백으로 구분해 한 줄에 출력한다.