The journey to becoming a developer

My future is created by what I do today, not tomorrow.

Algorithms/Programmers

[프로그래머스 Level 1] 자릿수 더하기 (자바스크립트)

Millie 2021. 10. 10. 06:14

Description

Given a natural number N as the parameter, write a function solution to return the sum of each digit of N.
For example, if N = 123, return 1 + 2 + 3 = 6.

Constraints

Range of N : natural number less than or equal to 100,000,000.

My Solution

숫자의 각 자릿수를 합한 값을 리턴하는 간단한 문제였다. 

 

  1. 받아온 숫자를 문자열로 변환한다.
  2. 각 문자열을 하나씩 쪼개서 배열로 만든다.
  3. reduce를 이용해 모든 배열 요소의 합을 구한다. 
  4. +를 이용해 문자열을 숫자로 변환한다.

 

Other's Solution

function solution(n) {
  var a = (n + '').split('');
  var b = 0;
  for (var i = 0; i < a.length; ++i) {
    b += parseInt(a[i]);
  }
  return b;
}

 

핵심은 비슷하지만 자릿수의 합을 구할 때 reduce 대신 for문을 이용했다. 그리고 정수로 변환하기 위해 parseInt를 사용했다. 

 

function solution(n) {
  var arr = n.toString().split('');
  var sum = 0;
  arr.forEach(element => {
    sum += parseInt(element);
  });
  return sum;
}

 

배열의 모든 요소의 합을 구하기 위해 forEach를 사용한 풀이이다.