행렬 회전
\(N \times M\) 행렬을 시계 방향으로 \(90^\circ\)씩 k번 회전한 새로운 2차원 리스트를 반환하는 함수 rotate_matrix를 작성하시오. 원본 행렬은 변경하지 않는다.
함수 원형은 주어지지 않는다. 설명과 아래의 호출 코드를 보고 함수의 매개변수와 반환값을 직접 설계한다.
함수를 사용하는 코드
작성한 함수는 아래 코드와 함께 실행된다.
n, m, k = map(int, input().split())
matrix = [list(map(int, input().split())) for _ in range(n)]
result = rotate_matrix(matrix, k)
for row in result:
print(*row)
print(type(result))
위 코드가 정상적으로 동작하도록 함수를 직접 정의한다. 제출할 때는 작성한 함수의 정의 전체만 제출한다.
입력
첫째 줄에 \(N\), \(M\), k가 주어진다. 다음 \(N\)개 줄에 행렬이 주어진다.
- \(1 \le N,M \le 100\)
- \(0 \le k \le 1,000,000,000\)
- 각 원소는 \(-1,000,000,000\) 이상 \(1,000,000,000\) 이하이다.
출력
회전된 행렬을 한 행에 한 줄씩 출력한다. 함수는 새로운 list를 반환해야 한다.
마지막 줄에는 함수가 반환한 값의 자료형을 출력한다.
예제 입력 1
2 3 1
1 2 3
4 5 6
예제 출력 1
4 1
5 2
6 3
<class 'list'>
예제 입력 2
2 2 2
1 2
3 4
예제 출력 2
4 3
2 1
<class 'list'>
코멘트