본문 바로가기
문제풀이/프로그래머스

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

by dev_kong 2021. 11. 23.
728x90
728x90

문제 설명

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

 

접근 방법

 

그냥 split으로 하나씩 끊어서 배열만들고

map으로 숫자로 바꾸고

reverse로 뒤집으면 끝..?

 

function solution(n) {
    const numbers = n+''
    return numbers.split('')
                  .map((val)=>+val)
                  .reverse()
}

 

 

응.. 정답

 

근데 다른 사람 답 보다가 신기한거 발견함

 

function solution(n) {
    var arr = [];
    do {
        arr.push(n%10);
        n = Math.floor(n/10);
    } while (n>0);
    return arr;
}

 

숫자를 10으로 나눈 나머지 즉 1의 자리 집어넣고

10으로 나눈고 소수점 버리고

다시 10으로 나누고 1의자리 집어 넣는 신박함

 

do..while처음봄

근데 그냥 while 써도 되더라.

function solution(n) {
  let arr = [];
  while (n > 0) {
    arr.push(n % 10);
    n = Math.floor(n / 10);
  }
  return arr;
}

 

 

Math.... 빨리 책부터 한바퀴 돌려야지...

728x90
728x90

'문제풀이 > 프로그래머스' 카테고리의 다른 글

자릿수 더하기  (0) 2021.11.24
이상한 문자열 만들기  (0) 2021.11.23
문자열 내림차순으로 배치하기  (0) 2021.11.22
정수 내림차순으로 배치하기  (0) 2021.11.22
나누어 떨어지는 숫자 배열  (0) 2021.11.22

댓글