https://school.programmers.co.kr/learn/courses/30/lessons/181918
정답
import java.util.ArrayList;
class Solution {
public int[] solution(int[] arr) {
ArrayList<Integer> list = new ArrayList<>();
int i =0;
while(i<arr.length)
{
if(list.size()==0 || list.get(list.size()-1) <arr[i])
{
list.add(arr[i]);
i++;
}
else
{
list.remove(list.size()-1);
}
}
int stk[] = new int[list.size()];
for(int j=0; j<list.size(); j++)
{
stk[j] = list.get(j);
}
return stk;
}
}
다른 사람의 풀이
import java.util.*;
class Solution {
public Stack<Integer> solution(int[] arr) {
Stack<Integer> stack = new Stack<>();
int i = 0;
while (i < arr.length) {
if (stack.empty() || stack.peek() < arr[i]) {
stack.push(arr[i]);
i++;
} else if (stack.peek() >= arr[i]) {
stack.pop();
}
}
return stack;
}
}
'Java > 프로그래머스' 카테고리의 다른 글
[JAVA] 프로그래머스 - 주사위 게임 3 (0) | 2024.03.22 |
---|---|
[JAVA] 프로그래머스 - 간단한 논리 연산 (0) | 2024.03.22 |
[JAVA] 프로그래머스 - 콜라츠 수열 만들기 (0) | 2024.03.21 |
[JAVA] 프로그래머스 - 카운트 업 (0) | 2024.03.21 |
[JAVA] 프로그래머스 - 배열 만들기 2 (0) | 2024.03.21 |