여름의 서재
[SWEA] 1961_숫자 배열 회전 본문
728x90
📕 문제
N x N 행렬이 주어질 때,
시계 방향으로 90도, 180도, 270도 회전한 모양을 출력하라.
[제약 사항]
N은 3 이상 7 이하이다.
[입력]
가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
각 테스트 케이스의 첫 번째 줄에 N이 주어지고,
다음 N 줄에는 N x N 행렬이 주어진다.
[출력]
출력의 첫 줄은 '#t'로 시작하고,
다음 N줄에 걸쳐서 90도, 180도, 270도 회전한 모양을 출력한다.
입력과는 달리 출력에서는 회전한 모양 사이에만 공백이 존재함에 유의하라.
def rotate(N, matrix):
result = []
for i in range(3):
matrix90 = [[0 for _ in range(N)] for _ in range(N)]
for i in range(N):
for j in range(N):
matrix90[j][N-1-i] = matrix[i][j]
result.append(matrix90)
matrix = matrix90
return result
T = int(input())
for tc in range(1, T + 1):
N = int(input())
matrix = [list(map(int,input().split())) for _ in range(N)]
result = rotate(N, matrix)
print('#{}'.format(tc))
for i in range(N):
for item in result:
print(*item[i], sep='', end=' ')
print()
'알고리즘 > SWEA' 카테고리의 다른 글
[SWEA] 1979_어디에 단어가 들어갈 수 있을까 (0) | 2021.08.20 |
---|---|
[SWEA] 1974_스도쿠 검증 (0) | 2021.08.20 |
[SWEA] 1859_백만 장자 프로젝트 (0) | 2021.08.20 |
[SWEA] 4871_그래프 경로 (DFS 이용) (0) | 2021.08.19 |
[SWEA] 1234_비밀번호 (0) | 2021.08.19 |
Comments