[알고리즘] 2차원 배열 90도 회전 시키는 방법

June·2021년 9월 8일
0

알고리즘

목록 보기
252/260

1. 파이썬에서 쉽게 하는 방법

출처 블로그

li = [[1,2,3], [4,5,6], [7,8,9], [10, 11, 12]]
for i in range(4):
    li = [k[::-1] for k in zip(*li)]
    print_board(li)
10 7 4 1 
11 8 5 2 
12 9 6 3 


12 11 10 
9 8 7 
6 5 4 
3 2 1 


3 6 9 12 
2 5 8 11 
1 4 7 10 


1 2 3 
4 5 6 
7 8 9 
10 11 12 

더 범용적인 방법

li = [[1,2,3], [4,5,6], [7,8,9], [10, 11, 12]]

def rotate_90_degree(arr):
    r = len(arr)
    c = len(arr[0])

    result = [[0]*r for _ in range(c)]

    for i in range(r):
        for j in range(c):
            result[j][r-i-1] = arr[i][j]
    return result

관련 문제

2020 KAKAO BLIND RECRUITMENT

백준 - 스티커

프로그래머스 - 네이버 기출

0개의 댓글