페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#2618

[고등부] 2025 KOI 2차대회 대비 모의고사 (1회차)

비버 야유회
스페셜 저지
서브태스크
1초 512MB

문제

N마리의 비버들이 원형으로 N개의 바위 위에 각각 한 마리씩 앉아 있다. 바위 위에는 한마리의 비버만 앉을 수 있다.

비버들은 호루라기 소리를 들으면 자신이 앉아있는 바위에 적혀있는 숫자만큼 시계 방향으로 자리를 옮겨 앉는다.

당신은 비버들이 호루라기 소리를 듣고 동시에 자리를 옮겼을 때, 앉지 못하는 비버가 없도록 하고 싶다.

따라서 바위를 적절히 배치하여 모든 비버들이 앉을 수 있도록 하는 방법을 찾아야 한다.

[제약 조건]

  • 1 \le T \le 1\,000

  • 1 \le N \le 100

  • 바위에 적혀있는 숫자는 N이하의 자연수이다.


입력

첫 줄에 테스트 케이스의 수 T가 주어진다.

다음 줄부터 T개의 테스트 케이스가 주어진다.

각 테스트 케이스는 두 줄로 구성되어 있다.

첫 줄은 바위의 수 N이 주어진다.

다음 줄은 바위에 적혀있는 숫자가 공백을 구분으로 주어진다.


출력

각 테스트 케이스에 대해 적절한 배치가 존재하면 "YES", 그렇지 않으면 "NO"를 출력한다.

만약 "YES"를 출력했다면, 다음 줄에 적절한 배치를 시계 방향으로 출력한다.


부분문제

번호 점수 조건
#18점

1 \le N \le 8

#25점

바위에 적혀있는 숫자가 서로 다르다.

#34점

바위에 적혀있는 숫자가 1,2 중 하나다.

#47점

바위에 적혀있는 숫자가 1,2,3 중 하나다.

#512점

바위에 적혀있는 숫자가 1,2,3,4 중 하나다.

#615점

바위에 적혀있는 숫자가 1,2,3,4,5 중 하나다.

#720점

1 \le N \le 16

#829점

추가 제약 조건 없음.


예제

3
4
2 2 2 2
4
1 2 2 1
6
3 2 1 3 2 1
YES
2 2 2 2
NO
YES
2 2 3 1 3 1
로그인해야 코드를 작성할 수 있어요.