var numbersCP = [Int]()
var targetCP = 0
var result = 0
func solution(_ numbers:[Int], _ target:Int) -> Int {
numbersCP = numbers
targetCP = target
dfs(0,0)
return result
}
func dfs(_ sum: Int, _ depth: Int) {
if depth == numbersCP.count {
if sum == targetCP {
result += 1
}
return
}
dfs(sum + numbersCP[depth], depth + 1)
dfs(sum - numbersCP[depth], depth + 1)
}'Algorithm > 프로그래머스' 카테고리의 다른 글
| Level2 - H - Index(Swift) (0) | 2022.08.09 |
|---|---|
| Level2 - 가장 큰 수(Swift) (0) | 2022.08.09 |
| Level1 - 신규 아이디 추천(Swift) (0) | 2022.08.07 |
| Level1 - 로또의 최고 순위와 최저 순위(Swift) (0) | 2022.07.31 |
| Level1 - 신고 결과 받기(Swift) (0) | 2022.07.24 |