우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age
가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요.
age
는 자연수입니다.age
≤ 1,000age | result |
---|---|
23 | "cd" |
51 | "fb" |
100 | "baa" |
입출력 예 #1
age
가 23이므로 "cd"를 return합니다.입출력 예 #2
age
가 51이므로 "fb"를 return합니다.입출력 예 #3
age
가 100이므로 "baa"를 return합니다.💡 문제풀이 과정
- 주어진 매개변수 age가 10이상의 수인 경우, ‘1’과 ‘0’ 각각 두 자리로 쪼개줘야 한다. 하지만 age는 Number type이므로 split()할 수 없으므로, 문자화(String)하여 각각의 인덱스가 접근한다. 나의 경우는 […String(age)].map()를 이용하여 알파벳의 인덱스를 리턴하였다.
- 답안 2번의 경우 다른 사람의 풀이로 replace()를 이용하였다.
✅ 답안 #1
function solution(age) {
let answer = "";
const alphabet = "abcdefghij";
[...String(age)].map(i => answer += alphabet[i]);
return answer;
}
✅ 답안 #2
function solution(age) {
return age.toString().replace(/./g, (i) => "abcdefghij"[i]);
}