프로그래머스 - 타겟 넘버

GGob2._.·2023년 4월 13일
0

algorithm

목록 보기
8/55

문제 설명

numberstarget이 주어졌을 때, numbers에 속한 숫자들을 더하고 빼서 target을 만드는 경우의 수를 찾는 문제다.


접근 방식

  • 모든 경우의 수를 고려하는 쪽으로 생각했다.

  • 값을 저장 및 갱신할 임시 배열을 선언하고, bfs()에서 값을 추가해나갔다.

  • 모든 값을 고려하고, target과 일치하면 answer를 1 증가시키는 방법으로 구현했다.

작성한 코드

def solution(numbers, target):
    answer = 0
    leaves = [0] # 배열선언 
    
    for num in numbers:
        tmp = []
        
        for parent in leaves:   
            tmp.append(parent + num)
            tmp.append(parent - num)
        leaves = tmp
    answer = leaves.count(target)
    
    return answer
profile
소통을 잘하는 개발자가 되고 싶습니다.

0개의 댓글