๊ธฐ๋ก๋ฐฉ

Lv.1 : ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ ๋ณธ๋ฌธ

CodingTest/Java

Lv.1 : ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ

Soom_1n 2023. 4. 10. 17:45

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ์—ฐ์†๋œ 1231 ์„ ์ œ๊ฑฐํ•œ๋‹ค.
    • ์ œ๊ฑฐ ํ›„ ๋งŒ๋“ค์–ด์ง€๋Š” 1231๋„ ์ œ๊ฑฐํ•ด์•ผ ํ•œ๋‹ค.
    • ์ œ๊ฑฐํ•œ ํšŸ์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

// class Solution {
//     public int solution(int[] ingredient) {
//         int[] stack = new int[ingredient.length];
//         int sp = 0;
//         int answer = 0;
//         for (int i : ingredient) {
//             stack[sp++] = i;
//             if (sp >= 4 && stack[sp - 1] == 1
//                 && stack[sp - 2] == 3
//                 && stack[sp - 3] == 2
//                 && stack[sp - 4] == 1) {
//                 sp -= 4;
//                 answer++;
//             }
//         }
//         return answer;
//     }
// }

import java.util.ArrayList;

class Solution {
    public int solution(int[] ingredient) {
        int answer = 0;

        ArrayList<Integer> table = new ArrayList<>();
        
        for(int i : ingredient) {
            table.add(i);
            
            int size = table.size();
            if (size >= 4) {
                if(table.get(size-1) == 1 && table.get(size-2) == 3 && table.get(size-3) == 2 && table.get(size-4) == 1) {
                    for(int j = 1; j <= 4; j++) {
                        table.remove(size-j);
                    }
                    answer++;
                }
            }
        }
        
        return answer;
    }
}

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • ์ž…๋ ฅ๋œ ์ˆ˜๋ฅผ ArrayList์— ๋„ฃ์–ด๊ฐ€๋ฉฐ ๋์˜ 4๊ฐœ ์ˆซ์ž๊ฐ€ 1231์ด ๋˜๋ฉด ์ง€์›Œ์ฃผ๋Š” ๋ฐฉ์‹์ด๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์ฃผ์„ํ•ด๋‘” ์ฝ”๋“œ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ์ธ๋ฐ, int๋ฐฐ์—ด์„ ๋งŒ๋“ค๋ฉด ๊ธธ์ด๊ฐ€ 100๋งŒ๊นŒ์ง€ ๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋„ˆ๋ฌด ์žก์•„๋จน์„ ์ค„ ์•Œ์•˜์ง€๋งŒ, ArrayList๋ž‘ ๋ณ„๋กœ ๋‹ค๋ฅผ๊ฒŒ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์†๋„๊ฐ€ ๋” ๋น ๋ฅธ ์ € ์ฝ”๋“œ๊ฐ€ ๋” ์ข‹์•„๋ณด์ธ๋‹ค.
    • ์‹ฌ์ง€์–ด ๋ฉ”๋ชจ๋ฆฌ๋„ int๋ฐฐ์—ด ์ฝ”๋“œ๊ฐ€ ๋” ๋‚ฎ๋‹ค.

728x90

'CodingTest > Java' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Lv.1 : ๊ณผ์ผ ์žฅ์ˆ˜  (0) 2023.04.12
Lv.1 : ํ‘ธ๋“œ ํŒŒ์ดํŠธ ๋Œ€ํšŒ  (0) 2023.04.12
Lv.1 : ์˜น์•Œ์ด (2)  (0) 2023.04.10
Lv.1 : ์‚ผ์ด์‚ฌ  (0) 2023.04.10
Lv.1 : ์‚ผ์ด์‚ฌ  (0) 2023.04.10