2022/05/04 숫자 문자열과 영단어

2022. 5. 4. 15:15ETC/알고리즘

https://programmers.co.kr/learn/courses/30/lessons/81301#

 

코딩테스트 연습 - 숫자 문자열과 영단어

네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자

programmers.co.kr

풀이

function solution(s) {
    var answer = '';
    var temp = '';
    let word = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
    let number = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    for (let i = 0; i < s.length; i++) {
        temp += s[i];
        if (number.indexOf(temp) !== -1) {
            answer += number.indexOf(temp)
            temp = '';
        } else if (word.indexOf(temp) !== -1) {
            answer += word.indexOf(temp);
            temp = '';
        }
    }
    return Number(answer);
}

성능

테스트 1 〉	통과 (0.06ms, 30.1MB)
테스트 2 〉	통과 (0.07ms, 30.3MB)
테스트 3 〉	통과 (0.08ms, 30MB)
테스트 4 〉	통과 (0.09ms, 30.2MB)
테스트 5 〉	통과 (0.15ms, 30.1MB)
테스트 6 〉	통과 (0.11ms, 29.8MB)
테스트 7 〉	통과 (0.12ms, 29.9MB)
테스트 8 〉	통과 (0.09ms, 30.1MB)
테스트 9 〉	통과 (0.11ms, 30.1MB)
테스트 10 〉	통과 (0.10ms, 30.4MB)

다른 풀이

  • split을 이용하여 풀 수 있다.
  • 정규표현식의 replace를 이용하여 풀 수 있다.

'ETC > 알고리즘' 카테고리의 다른 글

2022/05/02 신고 결과 받기  (0) 2022.05.02
2022/05/02 폰켓몬  (1) 2022.05.02
2022/05/02 직사각형 별 찍기  (0) 2022.05.02