[JAVA] 프로그래머스 : 배열 만들기 4

조예빈·2024년 8월 12일
0

Coding Test

목록 보기
104/138

https://school.programmers.co.kr/learn/courses/30/lessons/181918
스택을 써서 최상단 요소를 가지고 와 비교하면 쉽게 풀리는 문제이다.

import java.util.*;

class Solution {
    public Stack solution(int[] arr) {
        Stack<Integer> stk = new Stack<>();
        int i=0;
        int len = arr.length;
        while(i<len){
            if(stk.isEmpty()){
                stk.add(arr[i]);
                i++;
            }else{ //원소가 있으면
                if(stk.peek() < arr[i]){ //stk의 마지막 원소가 더 작으면
                    stk.add(arr[i]);
                    i++;
                }else{ //마지막 원소가 크거나 같으면
                    stk.pop();
                }
            }
        }
        return stk;
    }
}

profile
컴퓨터가 이해하는 코드는 바보도 작성할 수 있다. 사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다. -마틴 파울러

0개의 댓글