본문 바로가기

코딩 테스트/Programmers

lv.1 - 자릿수 더하기

728x90

문제 설명

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

제한 사항

  • N의 범위 : 100,000,000 이하의 자연수
n answer
123 6
987 24

입출력 예 설명
입출력 예 #1
문제의 예시와 같습니다.

입출력 예 #2
9 + 8 + 7 = 24이므로 24를 return 하면 됩니다

 

solution.js

function solution(n){
    return n.toString().split('').reduce((accumulator, currentValue) => accumulator + parseInt(currentValue), 0)
}

reduce 는 배열의 요소를 순회하며, 누산값과 현재 값을 더해가거나 처리한 값을 반환한다.

const arr1 = [1, 2, 3, 4, 5];

const sum = arr1.reduce((누산값, 현재값, 현재 index, 원본 배열) => 누산값 + 현재 값, 초기 누산값);

//sum 10
 

Array.prototype.reduce() - JavaScript | MDN

reduce() 메서드는 배열의 각 요소에 대해 주어진 리듀서 (reducer) 함수를 실행하고, 하나의 결과값을 반환합니다.

developer.mozilla.org

 

solution.py

def solution(n):
    return sum([int(i) for i in str(n)])
728x90