3은로그

[프로그래머스] Lv.0 외계행성의 나이 본문

코딩테스트

[프로그래머스] Lv.0 외계행성의 나이

3은 2023. 9. 7. 14:25
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/120834

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제

 

 

코드

 

function solution(age) {
    let my_obj = {
        0 : 'a',
        1 : 'b',
        2 : 'c',
        3 : 'd',
        4 : 'e',
        5 : 'f',
        6 : 'g',
        7 : 'h',
        8 : 'i',
        9 : 'j',
    }
    return [...age+""].map(v => my_obj[v]).join("");
}

 

1. 매개변수 age를 문자열로 바꾼 후 배열로 만든다.

2. map으로 배열을 순회하면서 객체에 접근하여 숫자를 문자로 바꾼다. 

3. join("")으로  배열의 모든 요소를 연결해 하나의 문자열로 만든다.

 

 

다른 사람 코드

 

function solution(age) {
  return age
    .toString()
    .split("")
    .map((v) => "abcdefghij"[v])
    .join("");
}

 

1. 문자열도 인덱스가 가능하기 때문에 "abcdefghij"[v]로 접근 가능

ex) age = 52 -> "52" -> ["5","2"]. -> ["abcdefghij"[5], "abcdefghij"[2] ] -> "fc"