문제
예진이는 무당벌레란 이름의 보드게임을 하고 있다. 이 보드게임은 혼자서 하는 게임이며, 여러 칸이 있는 긴 한 줄의 보드판에서 하는 게임이다. 게임은 다음과 같은 규칙에 따른다.
- 언더스코어(_)는 빈 칸이며, 알파벳 대문자(A~Z)는 무당벌레를 뜻한다. 같은 알파벳의 무당벌레는 같은 색이다. - 한 턴에 빈 칸으로 어떤 무당벌레든지 옮길 수 있다. - 무당벌레들은 인접한 칸에 같은 색의 무당벌레가 있으면 기뻐한다. - 모든 무당벌레들이 기뻐하면 게임이 끝난다.
보드판의 초기 상태가 주어졌을 때, 게임판 위의 모든 무당벌레들은 행복하게 할 수 있는지 알아보는 프로그램을 작성하라.
입력
첫 줄에 g가 주어진다. g는 총 게임의 수이다.(1 ≤ g ≤ 100, g는 정수) 다음 줄부터, 각 게임별로 두 줄씩 보드판의 상태가 입력된다.
첫 줄은 n이며 이는 보드판의 총 칸의 수이다.
두 번째 줄은 보드판의 상태인 문자열 b가 주어진다.(1 ≤ n ≤ 100, 길이(b) = n, 문자열 b의 구성원은 ‘_’ 또는 알파벳 대문자 뿐이다)
출력
각 게임별로, 모든 무당벌레를 행복하게 할 수 있으면 YES, 아니면 NO를 출력한다.
예제
4
7
RBY_YBR
6
X_Y__X
2
__
6
B_RRBR
YES
NO
YES
YES
힌트
출처
Hackerrank, Implement Practice