시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 (추가 시간 없음) | 512 MB | 312 | 101 | 70 | 36.649% |
작은 큐브러버는 작은 8개의 1×1×1 정육면체 조각을 갖고 있었어요. 각 조각에는 색이 칠해진 스티커가 붙어 있는 면이 세 개씩 있는데, 그 세 개의 면은 하나의 꼭짓점을 공유하고 있어요. 작은 큐브러버는 이 조각들을 잘 조립해서 각 면에 있는 4장의 스티커의 색이 서로 같고, 서로 다른 면에 있는 스티커는 서로 색이 다른 작은 2×2×2 큐브를 만들었어요. 작은 큐브러버는 작은 큐브를 매우 사랑했답니다.
그런데 어느 날 작은 큐베러버가 날아와 작은 큐브에 붙어 있는 스티커들을 뒤섞고, 작은 큐브를 다시 8개의 조각으로 분해해 버렸어요. 스티커들을 뒤섞었다는 것은 임의의 두 개의 스티커를 떼어낸 다음 위치를 바꿔서 붙이는 것을 충분히 많이 반복했다는 뜻이에요.
작은 큐브러버는 너무 슬펐지만 용기를 내어, 작은 큐베러버를 삐-하고 8개의 조각들을 되찾았어요. 작은 큐브러버는 이 조각들을 조립해서 다시 작은 큐브를 만들고 싶어해요. 작은 큐브러버를 도와주세요!
8개의 줄에 걸쳐 각 조각을 스티커가 붙어 있는 세 개의 면이 전부 보이도록 놓았을 때, 각 스티커에 칠해진 색을 윗면, 왼쪽 면, 오른쪽 면 순서로 읽은 결과가 주어진다. 각각의 색은 B
(blue), G
(green), O
(orange), R
(red), W
(white), Y
(yellow) 중 하나의 알파벳으로 표현된다. 예를 들어 위의 이미지의 중앙에 있는 조각은 Y B R
로 주어진다.
입력에는 각각의 알파벳이 같은 개수만큼 등장함이 보장된다.
조각을 조립해서 문제의 조건을 만족하는 작은 2×2×2 큐브를 만들 수 있을 경우 YES
, 불가능하다면 NO
를 출력한다.
W B O B W R G O Y R W G Y O B O G W B R Y G Y R
YES
R O W B Y G W B O W R G Y R O G Y R W G B O B Y
NO
첫 번째 예시의 조각들로는 아래와 같은 색 배치의 큐브를 만들 수 있다.
University > 서울대학교 > 2018 서울대학교 프로그래밍 경시대회 > Division 2 E번