본문 바로가기

코딩테스트

[프로그래머스] level1. 자연수 뒤집어 배열로 만들기 (javascript)

반응형

문제

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

나의 풀이

function solution(n) {
    const str_arr = (n+"").split('').reverse();

    let answer = []

    for( let i =0; i< str_arr.length; i++){
        answer.push(parseInt(str_arr[i]))
    }

    return answer

}

문자열-> 숫자(진수) parseInt()
숫자 -> 문자열 toString()

parseInt를 사용하기 위해 문자열로 바꿔주는 작업을 해주었다.

다른이들의 풀이

function solution(n) {
    // 문자풀이
    // return (n+"").split("").reverse().map(v => parseInt(v));

    // 숫자풀이
    var arr = [];

    do {
        arr.push(n%10);
        n = Math.floor(n/10);
    } while (n>0);

    return arr;
}

숫자 풀이가 굉장히 좋아서 가져왔다.
Math.floor() 함수는 주어진 숫자와 같거나 작은 정수 중에서 가장 큰 수를 반환합니다.
Math함수 잘 활용하자.

반응형