728x90
코딩 테스트 풀이 체크리스트 |
|
2시간 내에 풀었는가? | O |
본인의 실력으로 풀었는가? | O |
코딩테스트 연습 - 타겟 넘버
n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수
programmers.co.kr
class Solution {
int answer = 0;
public int solution(int[] numbers, int target) {
func(numbers, target, 0, 0);
return answer;
}
public void func(int[] numbers, int target, int p, int num) {
if (p == numbers.length) {
if (target == num) answer++;
return;
}
func(numbers, target, p+1, num + numbers[p]);
func(numbers, target, p+1, num - numbers[p]);
}
}
테스트 1 〉 | 통과 (4.36ms, 86.8MB) |
테스트 2 〉 | 통과 (4.42ms, 74.9MB) |
테스트 3 〉 | 통과 (0.22ms, 79.7MB) |
테스트 4 〉 | 통과 (0.58ms, 84.9MB) |
테스트 5 〉 | 통과 (0.59ms, 64.6MB) |
테스트 6 〉 | 통과 (0.37ms, 78.1MB) |
테스트 7 〉 | 통과 (0.18ms, 77MB) |
테스트 8 〉 | 통과 (0.27ms, 76.7MB) |
각 자리의 숫자들의 부호를 구분하는 것이기 때문에 앞에서부터 +냐 -냐 구분하면서 함수 호출
728x90
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[Java] 프로그래머스 - 가장 먼 노드 (3단계) (0) | 2022.04.25 |
---|---|
[Java] 프로그래머스 - 입국심사 (3단계) *다시풀기 (0) | 2022.04.22 |
[Java] 프로그래머스 - N으로 표현 (3단계) *다시 풀기 (0) | 2022.04.21 |
[Java] 프로그래머스 - 체육복 (1단계) (0) | 2022.04.18 |
[Java] 프로그래머스 - 모의고사 (1단계) (0) | 2022.04.15 |