한 걸음씩 기록하며

[프로그래머스 코딩테스트] 자릿수 더하기 본문

알고리즘 & 코딩테스트

[프로그래머스 코딩테스트] 자릿수 더하기

Haksae 2022. 1. 18. 01:53

[자릿수 더하기]

문제 설명 :

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.

 

⛏제한 조건

  • N의 범위 : 100,000,000 이하의 자연수

 

📁 입출력 예시

👉🏻  답안

function solution(n) {
    let str = n.toString();
    let sum = 0;
    for (let i = 0; i < str.length; i++) {
      sum += parseInt(str[i])
    }    
    return sum;
}

 

📑  간단한 설명

.toString() 으로 파라미터를 문자열로 변환

for문으로 문자열 인덱스 불러온 후 숫자형으로 변환하여 더하여 출력

 

💪🏻 공부하면 좋을 답안

function solution(n){
    return (n+"").split("").reduce((acc, curr) => acc + parseInt(curr), 0)
}
  • n+"" 으로 문자열 전환
  • .split으로 나눠서 배열로 저장
  • reduce 메서드 활용하여 누적값 계산 (초기값을 0으로 해주거나 parseInt(acc)를 해줘야 숫자형으로 계산됨)
Comments