[Lv.0] 숨어있는 숫자의 덧셈 (2)

01수정·2022년 12월 1일
0
post-thumbnail
post-custom-banner

<입문 100문제> Day 21 - 문자열, 사칙연산, 시뮬레이션, 2차원배열, 수학, 배열

문제



풀이

  1. 테스트케이스 2~7 실패
function solution(my_string) {
    let temp = [...my_string].reduce(([row, sum], item) => {
        console.log('item : ', item, ' / row : ', row, ' / sum : ', sum);
        if (!isNaN(item)) { // 숫자인 경우
            return [row+item, sum];
        } else {
            return [0, sum+row*1];
        }
    }, ['', 0]);

    
    return temp[1];
}
  1. my_string이 숫자로 끝나는 경우는 answer에 안 더해져서 실패. ("a1b23" 같은 경우)
function solution(my_string) {
    let my_array = [...my_string];
    let temp = my_array.reduce(([row, sum], item, idx) => {
        
        if (!isNaN(item)) { // 숫자인 경우
            if (idx === my_array.length-1) { // 마지막 순서인 경우 
                return [0, sum+(row+item)*1];
            } else {
                return [row+item, sum];
            }
        } else {
            return [0, sum+row*1];
        }

    }, ['', 0]);

    
    return temp[1];
}

해답

profile
새싹 FE 개발자
post-custom-banner

0개의 댓글