[문자열] 숫자 문자열과 영단어

김우진·2022년 7월 6일
0

알고리즘 문제

목록 보기
17/21
post-thumbnail

문제 정보

  • 사이트 : programmers
  • 문제 번호 : 81301
  • 난이도 : level1
  • 문제 분류 : 문자열

문제 풀이

내가 푼 문제 풀이

  • 주어진 문자열과 숫자를 map으로 저장 후 해당 문자를 포함 한 경우 변경하도록 함
public static int solution(String s) {
        int answer = 0;
        Map<String, String> check = new HashMap<>();
        check.put("zero","0");
        check.put("one","1");
        check.put("two","2");
        check.put("three","3");
        check.put("four","4");
        check.put("five","5");
        check.put("six","6");
        check.put("seven","7");
        check.put("eight","8");
        check.put("nine","9");
        for (String s1 : check.keySet()) {
            if(s.contains(s1)){
                s = s.replace(s1, check.get(s1));
            }
        }
        answer = Integer.parseInt(s);
        return answer;
    }

참고할 만한 다른 풀이

  • index와의 관계를 통하여 문자열 하나로 문제를 품
class Solution {
    public int solution(String s) {
        String[] strArr = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
        for(int i = 0; i < strArr.length; i++) {
            s = s.replaceAll(strArr[i], Integer.toString(i));
        }
        return Integer.parseInt(s);
    }
}

문제 링크

숫자 문자열과 영단어

썸네일 출처

Image by storyset on Freepik

0개의 댓글