bit가 눈 앞에서 왔다갔다

Py) 프로그래머스 43165 본문

Algorithm/Prob

Py) 프로그래머스 43165

헬린인형 2022. 1. 5. 17:49

https://programmers.co.kr/learn/courses/30/lessons/43165

 

코딩테스트 연습 - 타겟 넘버

n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+

programmers.co.kr

answer = 0


def dfs(numbers, target, idx, total):
    global answer
    if idx == len(numbers):
        if target == total:
            answer += 1
        return
    dfs(numbers, target, idx+1, total+numbers[idx])
    dfs(numbers, target, idx+1, total-numbers[idx])


def solution(numbers, target):
    global answer
    dfs(numbers, target, 0, 0)
    return answer

 

*

재귀 이용

dfs

 

반복적으로 푸는 방법도 있었는데 오늘은 날이 아닌지 머릿속에 도저히 안들어와서 그냥 넘기기,,,

혈압 그만 올리고 집 가자..

반응형

'Algorithm > Prob' 카테고리의 다른 글

Py) 프로그래머스 42584  (0) 2022.01.07
Py) 프로그래머스 42587  (0) 2022.01.07
Py, Java) 프로그래머스 42576  (0) 2022.01.04
Py) 프로그래머스 42895  (0) 2022.01.03
Py) 프로그래머스 49189  (0) 2021.12.31
Comments