[프로그래머스 | Javascript] 코딩테스트 입문 - 외계행성의 나이

박기영·2022년 10월 25일
0

프로그래머스

목록 보기
64/126

solution 1

function solution(age) {
    const ageArr = String(age).split("");
    
    const ageIn962 = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"];
    
    let ans = "";
    
    for(let i = 0; i < ageArr.length; i++){
        let index = Number(ageArr[i]);
        
        ans += ageIn962[index];
    }
    
    return ans;
}

약간...하드 코딩을 한 느낌이다.
사실 문제에서 사용될 문자들의 개수가 적어서, 상관없다고 생각하지만
허용 문자열이 더 늘어날 경우를 생각하면, ASCII 코드로 문제를 푸는 것도 좋을 것 같다.

solution 2

function solution(age) {
    const ageArr = String(age).split("");
    
    let ans = "";
    
    for(let i = 0; i < ageArr.length; i++){
        ans += String.fromCharCode(Number(ageArr[i]) + 97);
    }
    
    return ans;
}

ASCII 코드를 활용하는 방법으로 풀어보았다.
전체적인 구조는 똑같고, 활용 가능한 문자열을 하드 코딩했는지의 여부가 다른 정도이다.

profile
나를 믿는 사람들을, 실망시키지 않도록

0개의 댓글