๐Ÿ Algorithm/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[Programmers] ์˜น์•Œ์ด(1)(์ž๋ฐ”)

Dhey 2023. 4. 24. 23:22
๋ฐ˜์‘ํ˜•

โžฐ๋ฌธ์ œ

๋จธ์“ฑ์ด๋Š” ํƒœ์–ด๋‚œ ์ง€ 6๊ฐœ์›” ๋œ ์กฐ์นด๋ฅผ ๋Œ๋ณด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์กฐ์นด๋Š” ์•„์ง "aya", "ye", "woo", "ma" ๋„ค ๊ฐ€์ง€ ๋ฐœ์Œ์„ ์ตœ๋Œ€ ํ•œ ๋ฒˆ์”ฉ ์‚ฌ์šฉํ•ด ์กฐํ•ฉํ•œ(์ด์–ด ๋ถ™์ธ) ๋ฐœ์Œ๋ฐ–์— ํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด ๋ฐฐ์—ด babbling์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ๋จธ์“ฑ์ด์˜ ์กฐ์นด๊ฐ€ ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜๋ฅผ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

 

์ œํ•œ์‚ฌํ•ญ

   -  1 ≤ babbling์˜ ๊ธธ์ด ≤ 100

   -  1 ≤ babbling[i]์˜ ๊ธธ์ด ≤ 15

   -  babbling์˜ ๊ฐ ๋ฌธ์ž์—ด์—์„œ "aya", "ye", "woo", "ma"๋Š” ๊ฐ๊ฐ ์ตœ๋Œ€ ํ•œ ๋ฒˆ์”ฉ๋งŒ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค.

   -  ์ฆ‰, ๊ฐ ๋ฌธ์ž์—ด์˜ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ค‘์—์„œ "aya", "ye", "woo", "ma"๊ฐ€ ํ•œ ๋ฒˆ์”ฉ๋งŒ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค.

   -  ๋ฌธ์ž์—ด์€ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

 


์ž…์ถœ๋ ฅ ์˜ˆ

babblingresult

babbling result
["aya", "yee", "u", "maa", "wyeoo"] 1
["ayaye", "uuuma", "ye", "yemawoo", "ayaa"] 3

 


์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

  ์ž…์ถœ๋ ฅ ์˜ˆ #1

  • ["aya", "yee", "u", "maa", "wyeoo"]์—์„œ ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ "aya"๋ฟ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 1์„ returnํ•ฉ๋‹ˆ๋‹ค.

  ์ž…์ถœ๋ ฅ ์˜ˆ #2

  • ["ayaye", "uuuma", "ye", "yemawoo", "ayaa"]์—์„œ ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ "aya" + "ye" = "ayaye", "ye", "ye" + "ma" + "woo" = "yemawoo"๋กœ 3๊ฐœ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 3์„ returnํ•ฉ๋‹ˆ๋‹ค.

 


์œ ์˜์‚ฌํ•ญ

   -  ๋„ค ๊ฐ€์ง€๋ฅผ ๋ถ™์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฐœ์Œ ์ด์™ธ์—๋Š” ์–ด๋–ค ๋ฐœ์Œ๋„ ํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ทœ์ •ํ•ฉ๋‹ˆ๋‹ค.

      ์˜ˆ๋ฅผ ๋“ค์–ด "woowo"๋Š” "woo"๋Š” ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ "wo"๋ฅผ ๋ฐœ์Œํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ•  ์ˆ˜ ์—†๋Š” ๋ฐœ์Œ์ž…๋‹ˆ๋‹ค.

 

โ€ป ๊ณต์ง€ - 2022๋…„ 10์›” 27์ผ ๋ฌธ์ œ ์ง€๋ฌธ์ด ๋ฆฌ๋‰ด์–ผ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์— ์ œ์ถœํ•œ ์ฝ”๋“œ๊ฐ€ ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

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

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

programmers.co.kr

 


 

๐Ÿ’กํ’€์ด

  1. ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด ๋ฐฐ์—ด(babbling)์˜ ๊ฐ ๊ฐ’์—์„œ ๋ฐœ์Œํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž์—ด(str)๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ฌธ์ž์—ด์ด ์žˆ๋‹ค๋ฉด ๊ณต๋ฐฑ์œผ๋กœ ๋ฐ”๊พผ๋‹ค.

  2. trim() ๋ฉ”์†Œ๋“œ๋กœ ์•ž๋’ค์˜ ๊ณต๋ฐฑ์„ ์ œ๊ฑฐํ•œ๋‹ค.

  3. ๊ณต๋ฐฑ์„ ์ œ๊ฑฐํ•œ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๊ฐ€ 0์ด๋ผ๋ฉด(= ์กฐํ•ฉ๋œ ๋‹จ์–ด) answer++์„ ํ•œ๋‹ค.

 

 

 

 

โญ์ œ์ถœ ์ฝ”๋“œ

class Solution {
    public int solution(String[] babbling) {
        String[] str = {"aya", "ye", "woo", "ma"};
        int answer = 0;
        
        for(int i=0; i<babbling.length; i++){
            for(int j=0; j<str.length; j++){
                babbling[i] = babbling[i].replace(str[j], " ");
            }
            
            if(babbling[i].trim().length() == 0){
                answer++;
            }
        }
        return answer;
    }
}

 

 

์ •๋‹ต๋ฅ ์— ๋น„ํ•˜๋ฉด ์ƒ๊ฐ๋ณด๋‹ค ์‰ฌ์› ๋˜ ๋ฌธ์ œ์˜€๋‹ค. ์ •๋‹ต๋ฅ ๋งŒ ๋ณด๊ณ  ์ง€๋ ˆ ๋จผ์ € ๊ฒ์„ ๋จน์—ˆ๋‹ค๋‹ˆ..๐Ÿ˜… 

์ •๋‹ต๋ฅ  ๋‚ฎ์€ ๋ฌธ์ œ๋„ ๋” ๋„์ „ํ•ด๋ณผ ์šฉ๊ธฐ๊ฐ€ ์ƒ๊ธด๋‹ค๐Ÿ‘Š๐Ÿป

 

 

๋ฐ˜์‘ํ˜•