본문 바로가기
Algorithm/Programmers

[Programmers] 자연수 뒤집어 배열로 만들기

by 백승전 2022. 5. 5.

 

알림

 

본 포스팅은 공부 목적으로 작성된 글이며 상업적 목적으로 절대 사용되지 않았음을 밝힙니다.

 

문제

 

https://programmers.co.kr/learn/courses/30/lessons/12932

 

코딩테스트 연습 - 자연수 뒤집어 배열로 만들기

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345

programmers.co.kr

 

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를 들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.

 

코드

 

function solution(n) {
    return n.toString().split('').reverse().map(n => Number(n));
}

 

풀이

 

우선 숫자를 문자열로 바꿔줘야 합니다. 왜냐하면 하나하나 쪼개기 위해 split() 함수를 사용하기 위해선 숫자를 문자열로 변경해 줘야 하기 때문입니다. 따라서 첫 번째로 toString()을 사용해 문자열로 변환해주고, 이를 split('') 사용해 하나하나씩 쪼개줍니다.

 

그리고 저희가 따로 거꾸로 담아주는 작업을 하지 않고, reverse() 함수를 사용해 배열을 역순으로 거꾸로 뒤집어 주고, 이를 문자열 그대로가 아닌 다시 숫자로 변환해 줘야 하기 때문에, map 함수로 배열의 요소들을 Number()로 감싸주도록 합니다.

댓글