[프로그래머스, 120894] 영어가 싫어요 (java)
Problem Solving/Programmers

[프로그래머스, 120894] 영어가 싫어요 (java)

728x90

https://school.programmers.co.kr/learn/courses/30/lessons/120894

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

728x90

메모리: 80.7 MB, 시간: 0.10 ms

사용 알고리즘: 문자열

class Solution {
    public long solution(String numbers) {
        
        String[] stringNumbers = new String[] {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
        
        long answer = 0;
        int idx = 0;
        
        while(idx < numbers.length()) {
            
            for(int i = 0; i < 10; i++) {
                if(idx + stringNumbers[i].length() <= numbers.length()
                   && numbers.substring(idx, idx + stringNumbers[i].length()).equals(stringNumbers[i])) {
                    answer = answer * 10 + i;
                    idx += stringNumbers[i].length();
                    break;
                }
            }
        }
        
        return answer;
    }
}
728x90