45도 회전

시간 제한1초메모리 제한128 MB

요약
문자 격자를 45도 단위로 시계방향 회전시켜, 대각선 형태도 포함해 글자는 세운 채로 최소 줄 수로 출력합니다.
난이도

보통10점 중 6점

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

문제

소문자 알파벳으로 채운 R x C 표가 있다. 이 표를 시계 방향으로 K도 회전했을 때 보이는 모습을 출력해야 한다.

K는 45의 배수이다. 종이를 돌려도 각 글자는 항상 똑바로 선 모양을 유지한다고 생각한다.

입력

첫째 줄에 두 정수 R과 C가 공백으로 구분되어 주어진다.

다음 R개의 줄에는 길이가 C인 소문자 문자열이 주어진다. 각 문자열은 표의 한 행을 나타낸다.

마지막 줄에는 회전 각도 K가 주어진다.

  • 1 <= R <= 10
  • 1 <= C <= 10
  • K는 0 <= K <= 360인 45의 배수이다.

출력

표를 시계 방향으로 K도 회전했을 때의 모습을 출력한다.

회전 결과를 그리는 방법이 여러 가지라면 줄의 수가 가장 작은 형태를 출력한다. 각 줄의 앞쪽 공백은 그대로 출력해야 하며, 줄 끝의 공백은 출력하지 않는다. 모든 출력 줄은 소문자 알파벳으로 끝난다.

예제3

  1. 예제 1

    입력
    3 5
    damir
    marko
    darko
    45
    
    예상 출력
      d
     m a
    d a m
     a r i
      r k r
       k o
        o
    
  2. 예제 2

    입력
    3 5
    damir
    marko
    darko
    90
    
    예상 출력
    dmd
    aaa
    rrm
    kki
    oor
    
  3. 예제 3

    입력
    5 5
    abcde
    bcdef
    cdefg
    defgh
    efghi
    315
    
    예상 출력
        e
       d f
      c e g
     b d f h
    a c e g i
     b d f h
      c e g
       d f
        e