inblog logo
|
silver
    알고리즘문제풀기

    [알고리즘문제풀기] 배열 만들기 4

    silver's avatar
    silver
    May 03, 2025
    [알고리즘문제풀기] 배열 만들기 4
    Contents
    문제내가 작성한 정답다른 사람들의 정답

    문제

    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/181918

    내가 작성한 정답

    import java.util.Stack; class Solution { public int[] solution(int[] arr) { Stack<Integer> stk = new Stack<>(); int i=0; while (i<arr.length){ if(stk.isEmpty()) { stk.add(arr[i]); i++; } else { if(stk.peek()<arr[i]) { stk.add(arr[i]); i++; } else stk.pop(); } } return stk.stream().mapToInt(a->a).toArray(); } }

    다른 사람들의 정답

    import java.util.*; class Solution { public int[] solution(int[] arr) { Stack<Integer> stack = new Stack(); for(int i : arr ){ if(stack.isEmpty()){ stack.push(i); continue; } while(!stack.isEmpty() && i <= stack.peek()) { stack.pop(); } stack.push(i); } int[] answer = new int[stack.size()]; for(int i=0; i<answer.length; i++) { answer[answer.length - 1 - i] = stack.pop(); } return answer; } }
    Share article

    silver

    RSS·Powered by Inblog