프로그래머스

[프로그래머스 Level1] 숫자 문자열과 영단어(JAVA) - 2021 Kakao

쿠쿠s 2022. 3. 13. 23:41

https://programmers.co.kr/learn/courses/30/lessons/81301?language=java 

 

코딩테스트 연습 - 숫자 문자열과 영단어

네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자

programmers.co.kr

 


[문제 풀이]

 

입력으로 영단어 숫자와, 숫자가 주어졌을때 결과값을 숫자로 바꿔서 return 하도록 구현을 하면 되는 문제입니다.

바꾼다는 점에서 replaceAll 을 떠올렸고,  0  ~ 9 까지의 수를 변환하면 되기 때문에 주어진 영단어 10개를 배열로 만들고 for문을 진행을 하여 해당 단어를 해당 배열의 번호로 바꿔주면 풀리는 생각보다 간단한 문제 입니다.

 


[소스 코드]

 

class Solution {
    public int solution(String s) {
        String[] word = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
        StringBuilder sb = new StringBuilder();


        String ans = s;
        for (int i = 0; i < word.length; i++) {
            ans = ans.replaceAll(word[i], String.valueOf(i));
        }

        int answer = Integer.parseInt(ans);

        return answer;
    }
}