티스토리 뷰
728x90
반응형
문제
문자열에 포함된 영단어를 숫자로 변환하는 과정을 구현하는 문제이다.
예시) one4seveneight -> 1478
풀이
- 영단어 - 숫자 정보를 HashMap에 저장한다.
- for문을 통해 숫자 영단어를 순회하면서 replace 메서드를 사용해 숫자로 치환한다.
- 최종적으로 치환된 문자열을 숫자로 변환하여 결과를 반환한다.
Java 코드
import java.util.HashMap;
import java.util.Map;
class Solution {
public int solution(String s) {
// 영단어-숫자 HashMap
Map<String, String> numMap = new HashMap<>();
numMap.put("zero", "0");
numMap.put("one", "1");
numMap.put("two", "2");
numMap.put("three", "3");
numMap.put("four", "4");
numMap.put("five", "5");
numMap.put("six", "6");
numMap.put("seven", "7");
numMap.put("eight", "8");
numMap.put("nine", "9");
// 영단어를 숫자로 변환
for (String word : numMap.keySet()) {
s = s.replace(word, numMap.get(word));
}
// 정수로 변환
int answer = Integer.parseInt(s);
return answer;
}
}
문제출처
728x90
반응형
'Study > Coding Test' 카테고리의 다른 글
[백준 BOJ / Python] 30805번 사전 순 최대 공통 부분 수열 (0) | 2023.07.11 |
---|---|
[프로그래머스 / Python] 크레인 인형뽑기 게임 (0) | 2023.06.29 |
[백준 BOJ / Python] 13422번 도둑 (0) | 2023.05.16 |
[백준 BOJ / Python] 2749번 피보나치 수 3 (Pisano Period) (0) | 2023.04.30 |
[백준 BOJ / Python] 4386번 별자리 만들기 (0) | 2023.04.24 |
댓글