import sys
input=sys.stdin.readline
n, m, r = map(int, input().split())
arr = [list(map(int, input().split())) for _ in range(n)]
for _ in range(r):
for i in range(min(n,m)//2):
temp = arr[i][i]
boundary_x = n - i - 1
boundary_y = m - i - 1
for r in range(i, boundary_y):
arr[i][r] = arr[i][r+1]
for d in range(i, boundary_x):
arr[d][boundary_y] = arr[d+1][boundary_y]
for l in range(boundary_y, i, -1):
arr[boundary_x][l] = arr[boundary_x][l-1]
for u in range(boundary_x, i, -1):
arr[u][i] = arr[u-1][i]
arr[i+1][i] = temp
for line in arr:
for el in line:
print(el, end = ' ')
print()
같은 반 동기의 풀이를 보고 익혀서 Python에 적용해봤다.
PyPy3로 해야 통과한다 ㅠㅠ Python3으로는 시간 초과 나온다.
'온라인 저지 > BOJ' 카테고리의 다른 글
[BOJ/Node.js] 1786 찾기 (0) | 2022.01.30 |
---|---|
[BOJ/Java] 2309 일곱 난쟁이 (0) | 2022.01.23 |
[BOJ/Python] 15649 N과 M(1) (0) | 2021.10.15 |
[BOJ/Python] 2447 별 찍기 - 10, 11729 하노이 탑 이동 순서 (0) | 2021.10.03 |
[BOJ/C] 15757 큰 수 A+B (0) | 2021.09.27 |
댓글