์ฝ”๋”ฉํ…Œ์ŠคํŠธ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[Lv.1] ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด

๋ฒผ๋ฆฌ01 2024. 6. 18. 15:48

๋ฌธ์ œ ์„ค๋ช…

๋„ค์˜ค์™€ ํ”„๋กœ๋„๊ฐ€ ์ˆซ์ž๋†€์ด๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋„ค์˜ค๊ฐ€ ํ”„๋กœ๋„์—๊ฒŒ ์ˆซ์ž๋ฅผ ๊ฑด๋„ฌ ๋•Œ ์ผ๋ถ€ ์ž๋ฆฟ์ˆ˜๋ฅผ ์˜๋‹จ์–ด๋กœ ๋ฐ”๊พผ ์นด๋“œ๋ฅผ ๊ฑด๋„ค์ฃผ๋ฉด ํ”„๋กœ๋„๋Š” ์›๋ž˜ ์ˆซ์ž๋ฅผ ์ฐพ๋Š” ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์ˆซ์ž์˜ ์ผ๋ถ€ ์ž๋ฆฟ์ˆ˜๋ฅผ ์˜๋‹จ์–ด๋กœ ๋ฐ”๊พธ๋Š” ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

1478 → "one4seveneight"
234567 → "23four5six7"
10203 → "1zerotwozero3"
์ด๋ ‡๊ฒŒ ์ˆซ์ž์˜ ์ผ๋ถ€ ์ž๋ฆฟ์ˆ˜๊ฐ€ ์˜๋‹จ์–ด๋กœ ๋ฐ”๋€Œ์–ด์กŒ๊ฑฐ๋‚˜, ํ˜น์€ ๋ฐ”๋€Œ์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ์ธ ๋ฌธ์ž์—ด `s`๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. `s`๊ฐ€ ์˜๋ฏธํ•˜๋Š” ์›๋ž˜ ์ˆซ์ž๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

์ˆซ์ž ์˜๋‹จ์–ด
0 zero
1 one
2 two
3 three
4 four
5 five
6 six
7 seven
8 eight
9 nine

 

 

 

์ œํ•œ ์‚ฌํ•ญ

1 ≤ s์˜ ๊ธธ์ด ≤ 50
s๊ฐ€ "zero" ๋˜๋Š” "0"์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ์ฃผ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
return ๊ฐ’์ด 1 ์ด์ƒ 2,000,000,000 ์ดํ•˜์˜ ์ •์ˆ˜๊ฐ€ ๋˜๋Š” ์˜ฌ๋ฐ”๋ฅธ ์ž…๋ ฅ๋งŒ s๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ

`one4seveneight` -> `1478`

`23four6six7` -> `234567`

 

 

๐Ÿ“Œ๋ฌธ์ž์—ด ์น˜ํ™˜

`String` ํด๋ž˜์Šค์—๋Š” ๋ฌธ์ž์—ด ๋‚ด ํŠน์ • ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ํ•จ์ˆ˜๊ฐ€ ์กด์žฌํ•œ๋‹ค.

 

`replace()`

 ์ฒซ๋ฒˆ์งธ ์ธ์ž๋กœ ๋ฐ”๊พธ๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ž์—ด์„ ๋ฐ›๊ณ , ๋‘๋ฒˆ์งธ ์ธ์ž๋กœ ๋ณ€๊ฒฝ๋  ๋ฌธ์ž์—ด์„ ๋ฐ›๋Š”๋‹ค. ๋ฐ˜ํ™˜ ํƒ€์ž…์€ `String`์œผ๋กœ ์ž๊ธฐ ์ž์‹ ์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ฃผ์˜ํ•œ๋‹ค.

 

String str = "one234";
str = str.replace("one", "1");

// str = "1234";

 

String str = "1.2.3.4.5";

str = str.replace(".", ",");

// str = "1,2,3,4,5";

 

 

 

`replaceAll()`

์ฒซ๋ฒˆ์งธ ์ธ์ž๋กœ ๋ฐ”๊พธ๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ž์—ด์„ ์ •๊ทœ์‹์œผ๋กœ ๋ฐ›๊ณ , ๋‘๋ฒˆ์งธ ์ธ์ž๋กœ ๋ณ€๊ฒฝ๋  ๋ฌธ์ž์—ด์„ ๋ฐ›๋Š”๋‹ค. 

 

String str = "one234";
str = str.replaceAll("one", "1");

// str = "1234";

 

String str = "1.2.3.4.5";

str = str.replaceAll(".", ",");

// str = ",,,,,,,,,";

 

 

`replaceAll`์€ ์ •๊ทœ์‹์ด ์ ์šฉ๋˜๋ฏ€๋กœ ๋‘๋ฒˆ์งธ ๊ฒฝ์šฐ์˜ `.`์€ ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ์˜๋ฏธํ•˜๋ฏ€๋กœ, `"."`๋ฌธ์ž์—ด๋งŒ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ `๋ชจ๋“  ๋ฌธ์ž์—ด`์ด `","`์œผ๋กœ ๋ณ€๊ฒฝ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

 

 

 

๐Ÿ“Œํ’€์ด

one๋ถ€ํ„ฐ nine๊นŒ์ง€ ๋ชจ๋“  ์ˆซ์ž ์˜๋‹จ์–ด๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฐฐ์—ด์„ ๋งŒ๋“ ๋‹ค. ๊ฐ ์ธ๋ฑ์Šค์— ๋งž๋Š” ์˜๋‹จ์–ด๋ฅผ ๋„ฃ์–ด๋‘๋ฉด ๋ณ€๊ฒฝ์ด ํŽธ๋ฆฌํ•ด์ง„๋‹ค.

 

 

class Solution {
    public int solution(String s) {
        int answer = 0;
        
        String[] str_num = {"zero", "one","two","three","four","five","six","seven","eight","nine"};
       
        for(int i = 0; i < str_num.length; i++){
            s = s.replaceAll(str_num[i], String.valueOf(i));
        }
        
        answer = Integer.parseInt(s);
        
        return answer;
    }
}

 

 

 

 

 

 

 

 

 

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

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

programmers.co.kr