문제 설명
•
행렬을 시계 방향으로 90도, 180도, 270도 회전한 모양을 출력하는 문제
예제 입력/출력
•
입력1
10
3
1 2 3
4 5 6
7 8 9
6
6 9 4 7 0 5
8 9 9 2 6 5
6 8 5 4 9 8
2 2 7 7 8 4
7 5 1 9 7 9
8 9 3 9 7 6
…
Plain Text
복사
•
출력1
#1
741 987 369
852 654 258
963 321 147
#2
872686 679398 558496
952899 979157 069877
317594 487722 724799
997427 894586 495713
778960 562998 998259
694855 507496 686278
…
Plain Text
복사
제약 조건
•
문제 풀이
•
브루트 포스 -
◦
문제에서 시키는 대로 구현하면 되는 단순 구현 문제에 해당
행렬을 90도 회전하는 방법
풀이 코드
def rotate_matrix(m):
global N
ret = [[0] * N for _ in range(N)]
for i in range(N):
for j in range(N):
ret[j][N - 1 - i] = m[i][j]
return ret
T = int(input())
for tc in range(1, T + 1):
N = int(input())
matrix = []
for n in range(N):
matrix.append(list(input().split()))
# Solve
ans = []
for _ in range(3):
matrix = rotate_matrix(matrix)
ans.append(matrix)
# Output
print(f"#{tc}")
for i in range(N):
for j in range(3):
print("".join(ans[j][i]), end=" ")
print()
Python
복사