본문 바로가기
알고리즘 & 코딩 테스트/[Java]프로그래머스

[프로그래머스_Java] Lv.0 영어가 싫어요

by heosj 2024. 1. 19.

문제 설명

영어가 싫은 머쓱이는 영어로 표기되어있는 숫자를 수로 바꾸려고 합니다. 문자열 numbers가 매개변수로 주어질 때, numbers를 정수로 바꿔 return 하도록 solution 함수를 완성해 주세요.

 

제한사항

  • numbers는 소문자로만 구성되어 있습니다.
  • numbers는 "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" 들이 공백 없이 조합되어 있습니다.
  • 1 ≤ numbers의 길이 ≤ 50
  • "zero"는 numbers의 맨 앞에 올 수 없습니다.


풀이

class Solution {
    public long solution(String numbers) {
        String[] num = {"zero", "one", "two", "three", "four",
        		"five", "six", "seven", "eight", "nine"}; // 1
        
        for (int i = 0; i < num.length; i++) { // 2
            numbers = numbers.replaceAll(num[i], String.valueOf(i));
        }

        return Long.parseLong(numbers);
    }
}
  1. 각 단어에 대응하는 인덱스가 해당 숫자의 값이 되도록 배열 저장
  2. 배열을 순회하며 각 단어를 해당하는 숫자로 치환

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr