[Level1] 자릿수 더하기

문제

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

제한 조건

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


    입출력 예
Nanswer
1236
98724

문제 풀이

주어진 자연수 N를 문자열로 바꿔준 후 한글자씩 배열에 넣어 준 후 다시 자연수로 바꿔준 후 reduce 함수를 이용해서 누적 합을 return 해주었다.
처음에는 if(arr.length === 1) 이 부분을 따로 나눠주지 않고 바로 reduce를 이용해서 합을 구했더니 마지막 테스트에서 실패가 떠서 혹시나하고 N이 한자리일 경우를 따로 빼주었더니 성공이 떴다!

정답 코드 (내 풀이)

function solution(n)
{
    let answer = 0;
    let arr = String(n).split('');
    
    if(arr.length === 1){
        answer = n;
    }else{
        answer = arr.reduce((prev,curr)=> (prev*1)+(curr*1));
    }
    return answer;
}

좋은 웹페이지 즐겨찾기