1.N*N 행렬이 주어질 때, 시계 방향으로 90도 180도 270도 회전한 모양을 출력하여라
1.처음에 숫자로만 접근을 하려고 해서 접근을 쉽게 하지 못하였다
2.숫자값으로만 판단하면 헷갈릴 수 가 있으므로 회전이나 반전 같은 문제는 값이 아닌 좌표를 기준으로 풀어야한다
3.원래있던 배열내용을 목적지에 정리하는것으로 좌표를 설정해야한다
4.출력에도 .join함수를 사용해준다
"".join(리스트) 함수란 매개변수로 들어온 리스트에 있는 요소 하나하나를 합쳐서 하나의 문자열로 변환하는 함수이다
join함수는 기본적으로 문자열로 이루어진 리스트만 가능하므로 int리스트는 map를 사용해 해결해줘야한다
#기존 행렬을 90도회전 그리고 그 90도회전한것을 180도회전.... 반복해야하므로 함수로 만들어준다
def sol(arr):
Aarr = [[0]*n for _ in range(n)]
for i in range(n):
for j in range(n):
Aarr[i][j] = arr[n-1-j][i]
return Aarr
T = int(input())
for t in range(1,T+1):
n = int(input())
arr = [list(map(int,input().split())) for _ in range(n)]
arr90 = sol(arr)
arr180 = sol(arr90)
arr270 = sol(arr180)
print(f'#{t}')
for a,b,c in zip(arr90,arr180,arr270):
print(f'{"".join(map(str,a))} {"".join(map(str,b))} {"".join(map(str,c))}