마술사 남정훈
시간 제한1초메모리 제한256 MB
26장 카드에 최대 천만 개의 무늬 변환, 회전, 한 장 변경 명령을 적용하고, 공개 명령이 나올 때마다 현재 배열을 출력한다.
문제
정훈이는 마술사 1급 자격증을 가진 일류 마술사이다.
이번 공연의 카드마술쇼에서 난이도를 높이려고 정훈이는 카드를 특별 주문 제작했다. 무대에서 쓰는 트럼프카드에는 1번부터 26번까지 번호가 붙어 있다.
테이블에는 26장의 카드가 오름차순으로 놓여 있고, 각 카드의 모양은 스페이드(S), 다이아몬드(D), 하트(H), 클로버(C) 중 하나이다.
정훈이가 아래 마법의 주문을 외치면 주문에 따라 카드들의 모양이 바뀐다.
- Epahs lasrever: 모든 카드의 S와 C, D와 H의 모양을 서로 바꾼다.
- 예) SSSSSSSSSSCCCCCCCCCCDDDHHH -> E -> CCCCCCCCCCSSSSSSSSSSHHHDDD
- Roloc lasrever: 모든 카드의 S와 H, C와 D의 모양을 서로 바꾼다.
- 예) CCCCCCCCCCSSSSSSSSSSHHHDDD -> R -> DDDDDDDDDDHHHHHHHHHHSSSCCC
- Gnitfihs(N): 1번 카드부터 카드의 모양을 N번째 앞에 놓인 카드의 모양으로 바꾼다. 이때 1번의 앞은 26번이다. (1 ≤ N ≤ 26)
- 예) DDDDDDDDDDHHHHHHHHHHSSSCCC -> (G 3) -> CCCDDDDDDDDDDHHHHHHHHHHSSS
- Tniop-taht-egnahc(N, P): N번 카드의 모양을 P로 바꾼다.
- 예) CCCDDDDDDDDDDHHHHHHHHHHSSS -> (T 26 D) -> CCCDDDDDDDDDDHHHHHHHHHHSSD
- Aliov: 1번부터 26번까지 카드들의 모양을 순서대로 관객들에게 보여준다.
정훈이가 외치는 주문에 맞춰 카드를 바꿔 주는 프로그램을 작성해보자.
입력
첫 번째 줄에 정훈이가 외칠 주문의 수 M이 주어진다. M은 10,000,000보다 작은 자연수이다.
두 번째 줄에 처음 카드의 배열이 주어진다. 카드의 배열은 S, D, H, C로 이루어진 26자의 문자열이다.
세 번째 줄부터 M개 줄에 걸쳐 각 주문의 첫 글자(E, R, G, T, A)와 파라미터가 있다면 파라미터를 입력한다.
출력
Aliov 주문이 들어올 때마다 관객들에게 보여줄 카드의 배열을 출력한다.