๊ธฐ๋ก๋ฐฉ

Lv.1 : ์˜น์•Œ์ด (2) ๋ณธ๋ฌธ

CodingTest/Java

Lv.1 : ์˜น์•Œ์ด (2)

Soom_1n 2023. 4. 10. 16:52

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

 

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

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

programmers.co.kr



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

  • ๋ฌธ์ž์—ด ๋ฐฐ์—ด babbling์ด ์ž…๋ ฅ๋œ๋‹ค. ์กฐ์นด๊ฐ€ ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
    • ์กฐ์นด๋Š” "aya", "ye", "woo", "ma" 4 ๊ฐ€์ง€ ๋ฐœ์Œ๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ํ•œ ๋ฐœ์Œ์„ ์—ฐ์†์œผ๋กœ ๋ฐœ์Œํ•  ์ˆ˜๋Š” ์—†๋‹ค.
  • replaceAll์€ ์ƒˆ๋กœ์šด ๋ฐœ์Œ์กฐํ•ฉ์ด ๋งŒ๋“ค์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค.
    • ์ธ๋ฑ์Šค๋ฅผ ๋Š˜๋ ค๊ฐ€๋ฉฐ ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์ธ์ง€ ์•„๋‹Œ์ง€ ํ™•์ธํ•œ๋‹ค.

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

class Solution {
    public int solution(String[] babbling) {
        int answer = 0;
        
        for(String bab : babbling) {
            int idx = 0;
            int temp = -1;
            while(true) {
                if(temp != 1 && bab.substring(idx).indexOf("aya") == 0) {
                    idx += 3;
                    temp = 1;
                    continue;
                }
                
                if(temp != 2 && bab.substring(idx).indexOf("ye") == 0) {
                    idx += 2;
                    temp = 2;
                    continue;
                }
                
                if(temp != 3 && bab.substring(idx).indexOf("woo") == 0) {
                    idx += 3;
                    temp = 3;
                    continue;
                }
                
                if(temp != 4 && bab.substring(idx).indexOf("ma") == 0) {
                    idx += 2;
                    temp = 4;
                    continue;
                }
                break;
            }
            if(idx == bab.length()) answer++;
        }
        
        return answer;
    }
}

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

  • ํ•œ ๋ฌธ์ž์—ด์—์„œ ์ธ๋ฑ์Šค idx๋ฅผ ๋Š˜๋ ค๊ฐ€๋ฉฐ 4๊ฐ€์ง€ ๋ฐœ์Œ์ด ๊ฐ€๋Šฅํ•œ์ง€ ํ™•์ธํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ํ•œ ๋ฐœ์Œ์ด ์—ฐ์†ํ•ด์„œ ๋“ฑ์žฅํ•˜๋ฉด ์•ˆ๋˜๋Š” ๊ฑธ ๋ชจ๋ฅด๊ณ  ํ’€๋‹ค๊ฐ€, ์ œ์ถœํ•ด์„œ ํ‹€๋ฆฌ๊ณ  ๋””๋ฒ„๊น… ํ•˜๋ฉด์„œ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.
    • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค๋Š” ์†์œผ๋กœ ์ ์–ด๊ฐ€๋ฉฐ ํ’€์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ์ฒ˜์Œ ๋ฌธ์ œ๋ฅผ ์ฝ์„๋•Œ ๋” ๊ผผ๊ผผํžˆ ๋ด์•ผ๊ฒ ๋‹ค.
  • ๋‹ค๋ฅธ ํ’€์ด๋ฅผ ๋ดค๋Š”๋ฐ replace๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ๋‹ค.
    • ์—ฐ์†ํ•œ ๊ฒฝ์šฐ๊ฐ€ ์—†๋Š”์ด์ƒ replace๋กœ ํ•ด๋‹น ๋ฐœ์Œ์„ ๋ณ€๊ฒฝํ•˜๋Š”๋ฐ, ๋นˆ ๋ฌธ์ž์—ด"" ์ด ์•„๋‹ˆ๋ผ ๊ณต๋ฐฑ " "์„ ์คŒ์œผ๋กœ์จ ์ƒˆ๋กœ์šด ๋ฐœ์Œ์„ ๋งŒ๋“ค์ง€ ์•Š๊ณ , ๋งˆ์ง€๋ง‰์— replaceAll๋กœ ๋ชจ๋‘ ์ œ๊ฑฐํ•ด์ฃผ๋Š” ๋ฐฉ์‹์ด์—ˆ๋‹ค.
    • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค๋Š” ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ๊ฐ€ ๋งŽ์€๋ฐ, ์ข‹์€ ๊ณต๋ถ€๊ฐ€ ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. 

728x90

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

Lv.1 : ํ‘ธ๋“œ ํŒŒ์ดํŠธ ๋Œ€ํšŒ  (0) 2023.04.12
Lv.1 : ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ  (0) 2023.04.10
Lv.1 : ์‚ผ์ด์‚ฌ  (0) 2023.04.10
Lv.1 : ์‚ผ์ด์‚ฌ  (0) 2023.04.10
Lv.1 : ์ˆซ์ž ์ง๊ฟ  (0) 2023.04.10