문제

문제 링크
image

나의 풀이

아이디어

  • 1부터 반복문을 돌며 새로운 배열에 숫자를 넣어준다. (숫자는 2씩 증가하여 1, 3, 5… 식으로 들어갈 것이다.)
  • 반복문의 종료 조건은 숫자가 n보다 작거나 같을 때이다.

    코드

    function solution(my_string) {
      return [...my_string].reduce((total, v) => total + (Number(v) || 0), 0);
    }
    

다른 사람 풀이

function solution(my_string) {
    const answer = my_string.replace(/[^0-9]/g, '')
                            .split('')
                            .reduce((acc, curr) => acc + Number(curr), 0);
    return answer;
}

정규식을 이용해 숫자에 해당하는 부분만 걸러내어 더한 풀이