[구현] 2차원 배열의 회전

ch9eri·2022년 2월 21일
0

코테 - python

목록 보기
4/7

2차원 배열을 시계방향으로 90도, 180도, 270도 회전시켰을 때

🎲 규칙 찾기


⌨️ 코드

d = 90도 회전 횟수 (ex. d=2이면 180도 회전)

def rotate(a,n,m,d):
    n = len(a) #행 길이 계산
    m = len(a[0]) #열 길이 계산
    new = [[0]*n for _ in range(m)]
    
    #90도 회전
    if d%4 == 1: 
        for i in range(n):
            for j in range(m):
                new[j][n-i-1] = a[i][j]
                
    #180도 회전            
    elif d%4 == 2: 
        for i in range(n):
            for j in range(m):
                new[n-1-i][n-1-j] = a[i][j]
                
    #270도 회전            
    elif d%4 == 3: 
        for i in range(n):
            for j in range(m):
                new[n-1-j][i] = a[i][j]
    
    #360도 회전(그대로)         
    else:            
        for i in range(n):
            for j in range(m):
                new[i][j] = a[i][j]
    
    return new
profile
잘하자!

0개의 댓글