1. 문제 정의
이번 문제는 굉장히 쉽다. 문자열안에 영어로 적혀있는 숫자를 아라비아 숫자로 변환해주기만 하면 된다.
ex) "zero12" -> "012"
2. 나의 시도
문제를 보고 맵이 떠올라 맵을 만들고 맵을 순회하면서 문자열에 있는 알파벳을 아라비아숫자로 변경하였다.
3. code
/**
* 프로그래머스 LV1
* 숫자 문자열과 영단어
* 접근 방법: 문자열과 숫자를 map으로 만들고, map을 순회 하면서 key값에 해당하는 문자열은 숫자로 바꾸는 형식으로 진행.
*/
public class Solution {
public int solution(String s) {
Map<String,String> translator = new HashMap<>();
translator.put("zero","0");
translator.put("one","1");
translator.put("two","2");
translator.put("three","3");
translator.put("four","4");
translator.put("five","5");
translator.put("six","6");
translator.put("seven","7");
translator.put("eight","8");
translator.put("nine","9");
for (String key : translator.keySet()) {
s = s.replace(key, translator.get(key));
}
return Integer.parseInt(s);
}
}
4. 정리
이번 문제는 난이도가 너무 쉬워서 금방 풀었다. 카카오 1LV 문제는 대부분 문자열을 기반한 문제가 많은듯 하다.
참조
https://school.programmers.co.kr/learn/courses/30/lessons/81301
'프로그래밍 > 알고리즘 문제풀이' 카테고리의 다른 글
[pg] 프로그래머스 키패드 누르기 (0) | 2023.08.02 |
---|---|
[pg] 프로그래머스 신규아이디 추천 (0) | 2023.08.01 |
[pg] 프로그래머스 신고 결과 받기 (0) | 2023.07.27 |
[pg] 프로그래머스 성격 유형 검사하기 (0) | 2023.07.26 |
[pg] 프로그래머스 개인정보 수집 유효기간 (0) | 2023.07.25 |