본문 바로가기
프로그래머스

프로그래머스 Lv.1 : 02. 자연수 뒤집어 배열로 만들기

by 코린이 박원장👶 2022. 10. 31.

프로그래머스Lv.1 : 자연수 뒤집어 배열로 만들기


■ 문제 설명

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

■ 제한 조건

✔ n은 10,000,000,000이하인 자연수입니다.

■ 입출력 예

n return
12345 [5,4,3,2,1]

■ 내멋대로 풀어헤치기😜

뒤집는건 reverse를 사용하면 되지만, 숫자를 뒤집을 수는 없습니다.그래서,
String()으로 '12345'라는 숫자를 문자로 바꿔준뒤, split으로 한개씩 쪼개서 배열형식으로 바꾸어 줍니다. 그리고 reverse를 사용해서 ["5",..."1"]으로 변환!
이 배열안의 문자들을 어떻게 숫자로 다시 바꾸고 배열안에 넣을까 고민하다가 구글링을 좀 해봤는데요.
문자열->숫자 변환은 Number()를 사용하더라구요!
그리고 변환된 숫자를 하나씩 배열안에 넣어주면 되는데, 그냥 +=으로 넣으면 안되더라구요. 그래서 push()를 통해서 각각의 값을 배열의 끝에 차례대로 넣어주었더니 해결되었습니다 ^^

function solution(n) {
    var answer = String(n).split('').reverse();
    let arr = [];
    for(i=0; i<answer.length; i++){
        arr.push(Number(answer[i]))
    }
    console.log(arr)
    return arr;
}

■ 다른사람 입맛도 맛보기 😋

댓글들이 천재천재 해서 보고 계산기 두들겨봤더니 정말 천재네요
이사람이 알파고가 아닐까?

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;
}


📌 나혼자 공부...

push()

배열안의 맨 뒤에 지정값을 넣어줍니다.

숫자 <->

Number() : 문자 ≫ 숫자
String() : 숫자 ≫ 문자


🙇‍♀️ 틀린 점에 대한 지적은 언제나 환영합니다 🙇‍♂️

728x90

댓글


HTML이미지
HTML이미지

JAVASCRIPT

자세히 보기
HTML이미지