[프로그래머스] 타켓 넘버

yewon Lee·2023년 6월 10일
0


😎코딩테스트 연습>깊이/너비 우선 탐색(DFS/BFS)>타겟 넘버


📘 문제풀이

+,-한 값을 큐에 넣고 계속 +,-해서 마지막에 target과 같은 수의 개수를 찾아낸다.

from collections import deque

def solution(numbers, target):
    answer = 0
    q = deque()

    n = 0
    while n < len(numbers):
        ql = len(q)
        if ql != 0:
            m = 0
            while m < ql:
                num = q.popleft()
                q.append(num+numbers[n])
                q.append(num-numbers[n])
                m += 1
        else:
            q.append(numbers[n])
            q.append(-numbers[n])
        n += 1
    
    answer = q.count(target)

    return answer
profile
시작

0개의 댓글