자물쇠 한 바퀴
시간 제한1초메모리 제한128 MB
원형 다이얼과 세 숫자 코드가 주어질 때, 시계 방향과 반시계 방향 회전 순서가 자물쇠를 여는지 판정한다.
문제
원형 다이얼 자물쇠의 다이얼에는 부터 까지의 숫자가 시계 방향으로 적혀 있다. 다이얼을 돌리면 그 중 한 숫자가 맨 위로 온다. 이 맨 위에 있을 때 다이얼을 반시계 방향으로 만큼 돌리면 이 맨 위로 오고, 시계 방향으로 만큼 돌리면 이 맨 위로 온다.
각 자물쇠에는 세 숫자로 이루어진 비밀번호 가 있으며, 다음 단계를 순서대로 수행해야만 열린다.
- 다이얼을 시계 방향으로 최소 한 바퀴 이상 돌려 가 맨 위에 오도록 한다. 이 과정 중간에 반시계 방향으로 돌려서는 안 된다(연속된 여러 번의 시계 방향 회전으로 나누어 수행할 수 있다).
- 다이얼을 반시계 방향으로 돌려 가 맨 위에 두 번째로 오게 한다. 이 과정 중간에 시계 방향으로 돌려서는 안 된다(연속된 여러 번의 반시계 방향 회전으로 나누어 수행할 수 있다).
- 다이얼을 시계 방향으로 돌려 가 맨 위에 오게 하되, 한 바퀴를 넘겨서는 안 된다. 이 과정 중간에 반시계 방향으로 돌려서는 안 된다(연속된 여러 번의 시계 방향 회전으로 나누어 수행할 수 있다).
3단계 이후에 다이얼을 조금이라도 돌리면 자물쇠는 다시 잠긴다.
자물쇠 하나와 회전 순서가 주어진다. 첫 회전 전에 자물쇠는 잠겨 있고 다이얼은 이 맨 위에 오도록 맞춰져 있다. 마지막 회전 후 자물쇠가 열려 있는지 판단하라.
입력
입력은 여러 개의 테스트 케이스로 이루어진다.
각 테스트 케이스의 첫 줄에는 네 정수 가 주어진다. 이는 다이얼에 적힌 숫자의 개수와 세 숫자 비밀번호를 뜻한다. , , 는 모두 서로 다르며 이다.
이어지는 한 줄 또는 여러 줄에는 회전들이 나열되며, 각 회전은 d s 형태로 주어진다. 여기서 d는 시계 방향이면 C, 반시계 방향이면 CC이고, 은 그 회전 동안 맨 위를 지나가는 숫자의 개수이다. 예를 들어 이고 현재 맨 위가 일 때, CC 6은 을, C 6은 을 맨 위로 가져온다. 회전 목록은 여러 줄에 걸칠 수 있으며 ?로 끝난다.
마지막 테스트 케이스 다음에는 0 하나만 있는 줄이 온다.
출력
각 테스트 케이스마다 한 줄을 출력한다. 마지막 회전 후 자물쇠가 열려 있으면 Case k: Open을, 그렇지 않으면 Case k: Closed를 출력한다. 여기서 는 부터 시작하는 테스트 케이스 번호이다.