화단 재배치
시간 제한3초메모리 제한1024 MB
격자에서 d×d 창을 시계 방향으로 90도씩 돌리며 정해진 순서대로 이동한 뒤의 격자를 구합니다.
문제
준표는 집 앞에 있는 화단을 꾸몄다. 화단은 격자 모양이며, 각 칸에 꽃이 한 송이씩 심겨 있다. 꽃 색은 A부터 Z까지의 대문자에 대응하는 26가지이다. 어느 날 준표는 화단을 다시 꾸미고 싶어졌다.

화단이 너무 커서 꽃을 하나씩 옮길 수는 없다. 준표는 한 변의 길이가 인 정사각형 땅을 들어 올려 회전시킬 수 있는 장비를 빌렸다. 그는 화단이 제대로 다시 꾸며지기를 기대하며 다음 순서로 공사를 계획했다.
- 장비를 놓아 처음 개 행과 처음 개 열에 있는 꽃만 장비 안에 들어오게 한다.
- 장비 안의 정사각형을 시계 방향으로 회전시킨다. 이 정사각형에 마지막 개 행과 마지막 개 열의 꽃이 들어 있으면 공사가 끝난다. 그렇지 않고 정사각형에 마지막 개 열의 꽃이 없으면 장비를 오른쪽으로 칸 옮긴다. 그렇지 않으면 장비를 아래로 칸 옮기고, 처음 개 열의 꽃이 들어오도록 맨 왼쪽까지 옮긴다.
- 공사가 끝날 때까지 2번을 반복한다.
장비는 화단 밖으로 절대 나가지 않는다. , , 는 공사를 시작하기 전에 신중하게 정해지기 때문이다.
준표는 결과를 알기 전에는 공사를 시작할 수 없다. 결과를 출력하는 프로그램을 작성하라.
입력
첫 줄에 다섯 정수 , , , , 가 주어진다 (, , , , , ). 다음 개 줄에는 각각 정확히 개의 대문자가 주어지며, 이것이 현재 화단이다.
출력
공사를 마친 뒤의 화단을 개 줄로 출력한다. 각 줄에는 정확히 개의 대문자가 있다.
힌트
앞의 첫 번째 테스트에서 화단은 다음과 같이 바뀐다.
