코딩테스트 삼각 달팽이 문제풀이

프로그래머스 삼각 달팽이(level 2) 문제풀이

def solution(k):
    arr = [[0]*k for _ in range(k)]
    cnt = 1
    x, y = -1, 0
    n = int(k)
    while n>=0:
        for _ in range(n):
            x += 1
            arr[x][y] = cnt
            cnt += 1
        n -= 1
        for _ in range(n):
            y += 1
            arr[x][y] = cnt
            cnt += 1
        n -= 1
        for _ in range(n):
            x -= 1
            y -= 1
            arr[x][y] = cnt
            cnt += 1
        n -= 1
    
    result = []
    for i in range(k):
        for j in range(k):
            if arr[i][j] != 0:
                result.append(arr[i][j])
    return result

2주만에 푸니까 귀찮네

좋은 웹페이지 즐겨찾기