title: "[프로그래머스] 타겟 넘버 Python 파이썬 해설 (Level 2) - 이도훈"
cleanUrl: "programmers/43165"
description: "프로그래머스 Level 2 문제 [타겟 넘버]의 풀이를 정리합니다."

문제 설명 및 제한사항

아이디어 및 해결 방법

코드

def solve(numbers, idx, sign, val, target):
    if idx == len(numbers) - 1:
        if val + numbers[idx] * sign == target:
            return 1
        else:
            return 0
    
    a = solve(numbers, idx+1, +1, val+numbers[idx]*sign, target)
    b = solve(numbers, idx+1, -1, val+numbers[idx]*sign, target)
    return a + b

def solution(numbers, target):
    return solve(numbers, 0, +1, 0, target) + solve(numbers, 0, -1, 0, target)

출처

프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges