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

아름·2023년 11월 14일
0

알고리즘

목록 보기
4/26
post-custom-banner

🔎 문제

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

입출력 예


🔓 풀이 과정

고민

1) 자연수 n을 문자로 만들기 -> string 사용
2) 문자로 만든 n을 배열로 쪼개기 -> spilt
3) 배열을 역순으로 재배열하기 -> reverse

여기까지만 하고 제출을 하려니 자꾸 오답이 떠서 뭐가 문제일까 했는데
문자를 다시 숫자로 변환 시키지 않아서 return 값에 숫자가 아닌 문자가 나온 거 같다..

나의 풀이

function solution(n) {
  let answer = [];
  let arr = String(n).split("").reverse();
  for (let i = 0; i < arr.length; i++) {
    answer.push(parseInt(arr[i]));
  }
  return answer;
}

그 밖의 풀이

function solution(n) {
  return n
    .toString()
    .split("")
    .reverse()
    .map((o) => (o = parseInt(o)));
}

나는 for문을 돌렸는데 다른 분의 풀이에선 map을 활용해 바로 새로운 배열을 리턴했는데 훨씬 깔끔하고 간결하다. 보면서 감탄함..!
for문이 익숙해서 자주 사용했는데 다른 메소드랑 더 친해져야할듯 하다. 알고리즘은 다른 사람의 코드와 비교하는 게 재미인듯!

profile
내 꿈은 개발자
post-custom-banner

0개의 댓글