반응형
프로그래머스 '타겟넘버' 문제 입니다.
import java.util.ArrayList;
import java.util.Stack;
class Solution {
public int solution(int[] numbers, int target) {
int answer = 0;
int popNum = 0;
int tempNumber = 0;
Stack<Integer> rst = new Stack<Integer>();
ArrayList<Integer> list = new ArrayList<Integer>();
rst.push(numbers[0]);
rst.push(numbers[0]*-1);
for (int i = 1; i < numbers.length; i++) {
tempNumber = numbers[i];
list = new ArrayList<Integer>();
while(!rst.isEmpty()) {
popNum = rst.pop();
list.add(popNum+tempNumber);
list.add(popNum+(tempNumber*-1));
}
for (int j = 0; j < list.size(); j++) {
rst.push(list.get(j));
}
}
for (Integer integer : rst) {
if(integer == target)
answer++;
}
return answer;
}
}
반응형
'💻 IT > 📌 ALG' 카테고리의 다른 글
[프로그래머스] 숫자 문자열과 영단어 :: JAVA 풀이 (0) | 2022.03.12 |
---|---|
[프로그래머스] 신규 아이디 추천 :: JAVA 풀이 (3) | 2022.03.06 |
[프로그래머스] 로또의 최고 순위와 최저 순위 :: JAVA 풀이 (1) | 2022.03.06 |
[프로그래머스] 가장 큰 수 :: 정렬 이용하자 (0) | 2021.08.15 |
[백준] 11653번 :: 소인수분해 (0) | 2021.02.27 |