프로그래머스 풀이/level1

[Programmers] level 1) 문제 '자연수 뒤집어 배열로 만들기' 풀이

진기명기 2023. 5. 9. 17:38
🫠 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에 재할당하여 계속해서 나누는 형식으로!