반응형
문제
자연수 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함수 잘 활용하자.
반응형
'코딩테스트' 카테고리의 다른 글
[프로그래머스] level1. 문자열 다루기 기본 (javascript) (0) | 2021.04.20 |
---|---|
[프로그래머스] level1. 문자열을 정수로 바꾸기 (javascript) (0) | 2021.04.20 |
[프로그래머스] level1. 키패드 누르기 (javascript) (0) | 2021.04.20 |
[프로그래머스] level1. 음양 더하기 (javascript) (0) | 2021.04.20 |
[프로그래머스] level1. 소수 만들기 (javascript) (0) | 2021.04.20 |