자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요.
예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
제한 조건
- n은 10,000,000,000이하인 자연수입니다.
입출력 예
n | return |
---|---|
12345 | [5,4,3,2,1] |
function solution(n) {
const arr = n.toString().split("").reverse();
return arr.map(num => +num);
}
매개변수 n
은 Number 타입이기 때문에 모두 한 자리로 만들기 위해 toString 메소드를 통해 문자열로 변경한 뒤 split메소드를 사용합니다.
이후 reverse 메소드를 통해 배열들의 순서를 반대로 뒤집고
마지막 return문에서 map 메소드를 통해 각 요소들을 순회하면서 각 요소들을 다시 Number타입으로 변경합니다.
위 풀이의 경우 정답을 구하기 위해 Number -> String -> Number 로 타입을 변경해줘야 하는 불편함이 있는데 아래와 같이 풀이를 작성한다면 Number타입을 유지한 채 문제를 해결할 수 있습니다.
function solution(n) {
const arr = [];
while(n > 0) {
arr.push(n % 10);
n = Math.floor(n / 10);
}
return arr;
}