Algorithm/프로그래머스

[ Summer/Winter coding 2019 ] 종이접기

cat_cat 2020. 5. 19. 22:04

 

어떻게 접근할까 하다가 종이를 직접 접어보았다.

n = 1~4 일 때 모양

이를 list로 표현해보면 중간을 기준으로 양 옆이 모양은 대칭이지만 숫자는 반대로 이루어져 있다. 

n = 1 : [ 0 ]

n = 2 : [ 0 0 1 ]

n = 3 : [ 0 0 1 0 0 1 1 ]

n = 4 : [ 0 0 1 0 0 1 1 0 0 0 1 1 0 1 1 ]

 

 Code

def solution(N):
    answer = [0]

    for i in range(1, N):
        temp = []
        for j in range(0,len(answer)):
            temp.append(answer[j])
        temp.append(0)
        answer.reverse()
        for j in range(0,len(answer)):
            if (answer[j] == 0):
                temp.append(1)
            else:
                temp.append(0)
        answer = temp

    return answer
def solution(n):
    res = [0]

    for i in range(n - 1):
        res = res + [0] + [bit ^ 1 for bit in arr[::-1]]

    return res

 

문제 출처