💡문제접근
- 배열의 회전을 구현하는 문제로 전의 값을 저장하지 않으면 모서리의 값이 사라지는 문제가 발생해서 이를 염두에 두면서 코드를 짰는데 문제는 간단하지만 푸는데 시간이 많이 걸렸다.
💡코드(메모리 : 116504KB, 시간 : 788ms, PyPy3로 제출)
import sys
input = sys.stdin.readline
N, M, R = map(int, input().strip().split())
array = [list(map(int, input().strip().split())) for _ in range(N)]
for _ in range(R):
for i in range(min(N, M) // 2):
y, x = i, i
start = array[y][x]
for j in range(i+1, N-i):
y = j
prev_value = array[y][x]
array[y][x] = start
start = prev_value
for j in range(i+1, M-i):
x = j
prev_value = array[y][x]
array[y][x] = start
start = prev_value
for j in range(N-i-2, i-1, -1):
y = j
prev_value = array[y][x]
array[y][x] = start
start = prev_value
for j in range(M-i-2, i-1, -1):
x = j
prev_value = array[y][x]
array[y][x] = start
start = prev_value
for row in array:
print(*row)
💡소요시간 : 56m