|
이즈미 |
결국 아까 전에 하던 그 수박 쏘기는, 누가 이긴 거야? |
|
히후미 |
……네? 주, 중단시킨 이즈미 씨가 그 얘길 하는 거예요?! 그보다 그 화제를 다시 꺼내면 안 돼요! |
|
아즈사 |
하긴……. 결판이 나진 않았었지. |
|
마시로 |
과연, 그냥 넘어갈 뻔한 걸 딱 지적해 주셨군요. 이대로 어영부영 끝내기엔, 정의실현부로서 이름이 울 겁니다! |
|
아즈사 |
마찬가지야. 명확한 결론 없이 전장에서 물러나는 건, 우리 보충수업부의 이름에 먹칠을 하는 행동이겠지. |
|
히후미 |
아즈사 쨩?! 보충수업부의 이름에 그 정도의 무게는 없다고 생각하는데요?! |
|
|
열매의 배치
우선, 사격 위치를 중심으로 원 모양으로 야자열매가 개 놓여 있네. 은 짝수인 것 같아. 야자열매들은 모두 같은 간격으로 배치되어 있고, 어떤 하나를 번 열매라고 정한 뒤, 그로부터 반시계 방향으로 차례대로 번, 번, …, 번 열매라고 부르자.
선생님이 사용하는 프로그램 안에는 가상의 직선 축 , 가 정의되어 있네.
첫 번째 줄에 야자열매 수 , 서브 쿼리의 수 , 쿼리의 수 , 처음에 선택된 야자열매 번호 가 공백으로 구분되어 주어진다. (, 은 짝수; ; ; )
선생님이 부르게 되는 야자열매의 번호를 한 줄에 하나씩, 순서대로 출력한다.
쿼리를 수행하기 전과 5개의 쿼리를 각각 순서대로 수행 했을 때 선택된 야자 열매와 각 서브쿼리들은 아래 그림과 같아.
선생님이 5번을 부르게 될 거라는 걸 알 수 있어.
아즈사
|
흐음. 승부를 다시 내고 싶어도 수박은 이미 쓸 수 없게 되었고…… |
|
마시로 |
그럼 지금부터 승부는, 수박이 아닌 다른 것으로 내도록 하죠! 예를 들어, 저 야자수의 열매는 어떤가요?! |
|
아즈사 |
좋아. 저걸로 마저 승부를 내면 되겠어. |
|
마시로 |
선생님이 프로그램을 이용하여 열매 번호를 불러 주시고, 우리는 그 열매를 맞추는 걸로 승부를 내죠. |
|
아즈사 |
부탁해 선생님. |
히후미 쨩의 기대에 부응할 수 있도록 열심히 해야지. ……상황을 한 번 정리해 보자.
야자열매는 원 위에 균일하게 놓여 있으니까, 어느 열매든 축이나 축에 대해 대칭인 위치에도 항상 정확히 하나의 다른 열매가 존재할 거야.
서브 쿼리
선생님이 준비한 프로그램에는 서브 쿼리가 총 개 있고, 각각 번부터 번까지 번호가 붙어 있어. 각 서브 쿼리는 현재 선택된 야자열매를 어느 다른 야자열매로 바꿀지를 나타내는 명령이고, 다음 네 가지 형태 중 하나야.
이동은 원 모양으로 이어져 있어서, 반시계 방향으로 만큼 이동하면 번 열매에서 번 열매로 돌아오고, 그 외에는 번 열매에서 번 열매로 이동할 거야. 마찬가지로 시계 방향으로 만큼 이동하면 번 열매에서 번 열매로, 그 외에는 번 열매에서 번 열매로 이동할 거고.
……하지만, 선생님은 서브 쿼리 하나만 실행하는 것이 아니네.
쿼리
프로그램은 이 개의 서브 쿼리를 실행하거나 내용 자체를 바꾸기 위해, 추가로 개의 쿼리가 존재해. 각 쿼리는 다음 두 종류 중 하나야.
1 i j: 번 서브 쿼리부터 번 서브 쿼리까지, 번호가 작은 것부터 차례대로 모두 실행.
2 i j q 또는 2 i j q a: 번 서브 쿼리부터 번 서브 쿼리까지를, 전부 똑같은 서브 쿼리로 내용을 변경.
처음에는 번 야자열매가 선택되어 있다고 하네? 이 상태에서 개의 쿼리를 앞에서부터 순서대로 수행할 테고. 각 1 i j 쿼리가 모두 끝날 때마다, 선생님은 그 순간 선택된 야자열매의 번호를 불러 줄 거야.
각 1 i j 쿼리가 종료되고 새롭게 선택된 야자열매 그대로 다음 쿼리를 실행하는 것에 유의해야 해.
목표
응. 알겠어. 결국 내가 알고 싶은 건 단 하나.
“선생님이 부르게 되는 야자열매의 번호가 순서대로 무엇이 될까?”
미리 그 번호를 알고 있다면 유리할 터, 주어진 모든 쿼리를 그대로 따라갔을 때 그 번호들을 차례대로 구해 보자.
두 번째 줄부터 번째 줄까지, 번 서브 쿼리부터 번 서브 쿼리까지가 번호 순서대로 한 줄에 하나씩 주어진다. 각 줄은 다음 두 형태 중 하나이다.
그다음 번째 줄부터 번째 줄까지, 쿼리가 수행 순서대로 한 줄에 하나씩 주어진다. 각 줄은 다음 세 형태 중 하나이다. ; ;
번 쿼리는 적어도 한 번 이상 주어진다.