만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

글자

시간 제한2초메모리 제한256 MB

요약
격자에 적힌 글자들을 중력 방향(왼쪽, 오른쪽, 위, 아래)의 순서대로 밀어 최종 격자를 출력합니다.
난이도

쉬움10점 중 3점

유형
행렬, 시뮬레이션, 구현
정답자
아직 제출이 없습니다

문제

마틴은 선형대수 강의를 듣고 있다. 말할 필요도 없이, 강의하는 교수는 우주에서 가장 지루한 사람이다.

칠판에 N×MN \times M 행렬이 적혀 있다. 일부 칸에는 영문 알파벳이 적혀 있고, 나머지 칸은 비어 있다. 다음은 6×86 \times 8 행렬의 예이다:

[klndicihjacbcef]\begin{bmatrix} k & & l & & n & d & i & \\ & & & & & c & & \\ & & & & & & i & h \\ j & & & a & & & & \\ & & c & b & & & & \\ & & c & & & & e & f \end{bmatrix}

마틴은 이 행렬이 무엇을 나타내는지 전혀 모른다. 지난 30분 동안 강의를 듣지 않았다. 대신 중력이 갑자기 행렬에 작용해서, 모든 글자가 아래로 미끄러져 바닥에 닿거나 바로 아래 글자에 부딪힐 때까지 내려간다고 상상한다. 첫 번째 단계 후 행렬은 다음과 같다:

[likcadihjcbncef]\begin{bmatrix} & & & & & & & \\ & & & & & & & \\ & & & & & & & \\ & & l & & & i & & \\ k & & c & a & & d & i & h \\ j & & c & b & n & c & e & f \end{bmatrix}

그다음 중력의 방향이 바뀌어 글자를 왼쪽으로 당긴다. 이것이 두 번째 단계이다. 모든 글자는 왼쪽 끝에 닿거나 왼쪽 글자에 부딪힐 때까지 왼쪽으로 미끄러진다. 행렬은 다음과 같이 된다:

[likcadihjcbncef]\begin{bmatrix} & & & & & & & \\ & & & & & & & \\ & & & & & & & \\ l & i & & & & & & \\ k & c & a & d & i & h & & \\ j & c & b & n & c & e & f & \end{bmatrix}

마틴은 강의가 끝날 때까지 이 과정을 머릿속으로 계속 진행한다. 각 단계에서 모든 글자가 제자리에 내려앉은 뒤에 중력 방향이 바뀔 수 있다. 방향은 왼쪽, 오른쪽, 위, 아래 네 가지이다.

주어진 중력 방향 변화의 순서에 따라 모든 글자의 최종 위치를 구하는 프로그램을 작성하라.

입력

첫 줄에 세 정수 NN, MM, KK가 주어진다. N×MN \times M은 행렬의 크기이고, KK는 단계 수이다.

둘째 줄에는 길이가 KK인 문자열이 주어진다. 문자는 L, R, U, D 중 하나이며, 각각 해당 단계의 중력 방향인 왼쪽, 오른쪽, 위, 아래를 뜻한다.

이어지는 NN줄에 행렬이 주어진다. 각 줄은 MM개의 문자로 이루어지며, 소문자 영문자이거나 빈 칸을 뜻하는 '.'(점)이다.

출력

마지막 단계가 끝난 후의 행렬을 입력과 같은 형식으로 출력한다.

제한

1≤N,M≤1001 \le N, M \le 100

0≤K≤1000 \le K \le 100

예제2

  1. 예제 1

    입력
    6 8 5
    DLURD
    k.l.ndi.
    .....c..
    ......ih
    j..a....
    ..cb....
    ..c...ef
    
    예상 출력
    ........
    ........
    ........
    ......hf
    ..iadice
    .lkcbnjc
    
  2. 예제 2

    입력
    3 3 0
    
    a..
    .b.
    ..x
    
    예상 출력
    a..
    .b.
    ..x