🫠 Programmers (level 1) 👉🏻 문제 9번 (자연수 뒤집어 배열로 만들기)
✏️ 문제 설명
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를 들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
✏️ 제한 조건
n은 10,000,000,000이하인 자연수입니다.
✏️ 입출력 예
n return
12345 [5,4,3,2,1]
function solution(n) {
return (n+'').split('').map((item) => Number(item)).reverse()
}
✅ 자연수 n을 문자열로 만든 후, split('')으로 배열 분리하였다. ex) 12345 --> [1,2,3,4,5]
✅ 문자열로 변경한 n을 Number()로 다시 변경 후, 뒤집어야 하기 때문에 reverse() 이용!
💡 다른 사람 풀이
function solution(n) {
let arr = []
do {
arr.push(n % 10)
n = Math.floor(n / 10)
} while(n > 0)
return arr
}
✅ do-while문을 이용하여 수학적으로 접근했다.
✅ % 연산자로 나머지 값을 먼저 배열에 넣고, 소수점을 제외한 몫을 n에 재할당하여 계속해서 나누는 형식으로!
'프로그래머스 풀이 > level1' 카테고리의 다른 글
[Programmers] level 1) 문제 '문자열을 정수로 바꾸기' 풀이 (0) | 2023.05.11 |
---|---|
[Programmers] level 1) 문제 '정수 내림차순으로 배치하기' 풀이 (0) | 2023.05.10 |
[Programmers] level 1) 문제 '문자열 내 p와 y의 개수' 풀이 (0) | 2023.05.08 |
[Programmers] level 1) 문제 '정수 제곱근 판별' 풀이 (0) | 2023.05.07 |
[Programmers] level 1) 문제 'x만큼 간격이 있는 n개의 숫자' 풀이 (0) | 2023.05.06 |