[프로그래머스] 숨어있는 숫자의 덧셈(1)

hello__0·2023년 8월 29일
0

Algorithm

목록 보기
12/20

남의 풀이(1)

function solution(my_string) {
    let sum = 0;
    for (let i = 0; i < my_string.length; i++) {
        if (isNaN(my_string[i]) === false) {
            sum += Number(my_string[i])
        } 
    } return sum;
}

남의 풀이(2)

function solution(my_string) {
  const num = my_string.split("");
  let result = 0;
  
  for(let i = 0; i < num.length; i++){
    if(Number(num[i])) result += Number(num[i])
  }
  return result;
}

split 메서드를 이용하여 배열을 자르는 것 까지는 생각해 냈고 isNaN을 이용하여 배열이 숫자가 아닌 경우 false를 출력하는 것도 알게 되었다.
마지막 배열 안의 문자로 된 문자열들을 어떻게 숫자로 판별하는지 까지 생각을 하지 못했다.

(1)풀이 에서는 배열을 쪼갤 필요 없이 for로 배열을 훑으면서 조건으로 isNaN 메서드를 사용했을 때, false가 나온 경우 숫자로 변환해서 sum에 누적으로 더할 수 있도록 만든 알고리즘이다.

(2)풀이 에서는 내가 처음 생각한대로 split을 이용하여 배열을 쪼갰고 반복문의 조건을 바로 숫자로 변환해서 숫자인 객체들을 누적하여 결과를 return 하도록 만들었다.

profile
자라나라 나무나무

0개의 댓글

관련 채용 정보