MapleStory Finger Point Cute Line Smiley Blinking Hello Kitty Angel MapleStory Finger Point

๐Ÿƒ‍โ™€๏ธprogrammers/Java

หšโ‚Šโœฉโ€งโ‚Š ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - java ๋ฐฐ์—ด ๋งŒ๋“ค๊ธฐ 4 หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 4. 27. 18:35

๐Ÿ’ก ์ง์ ‘ ํ‘ผ ์ฝ”๋“œ 

ํฌ์ธํŠธ๋Š” ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

๋™์  ๋ฐฐ์—ด์€ ๋ฐฐ์—ดํฌ๊ธฐ๊ฐ€ ์ •ํ•ด์ง€์ง€ ์•Š์•„์„œ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ๊ฐ’์ด ๋ช‡์ธ์ง€ ๊ฐ€๋Š ํ•  ์ˆ˜ ์—†๋Š”๋ฐ

์ด ๊ฒฝ์šฐ์—๋Š” ํฌ๊ธฐ - 1 ์„ ํ†ตํ•ด ๊ตฌํ•ด์ค€๋‹ค.

int lastIndex = stk.size() - 1;

 

๐Ÿ’ฌ .size()  : ์Šคํƒ(Stack)์ด๋‚˜ ๋‹ค๋ฅธ ์ปฌ๋ ‰์…˜์˜ ํฌ๊ธฐ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ  

๐Ÿ’ฌ .remove() : ๊ฐ์ฒด์—์„œ ํŠน์ • ์š”์†Œ๋ฅผ ์ œ๊ฑฐ

import java.util.ArrayList;

class Solution {
    public ArrayList<Integer> solution(int[] arr) {
        
         ArrayList<Integer> stk = new ArrayList<>();

        for (int i = 0; i < arr.length;){
            int lastIndex = stk.size() - 1;
            if (stk.isEmpty()){
                stk.add(arr[i]);
                i++;
            }
            else if (stk.get(lastIndex) < arr[i]){
                stk.add(arr[i]);
                i++;
            }          
            else if (stk.get(lastIndex) >= arr[i]){
                stk.remove(lastIndex);
            }
        }
        
        return stk;
    }
}