[1차] 다트 게임(for, if)

Eunsoo Ha·2021년 8월 14일

programmers

목록 보기
33/37
const solution = dartResult => {
    let temp = 0;
    let answer = [];
    let sum = 0;
    
    for(let i = 0; i < dartResult.length; i++) {
        if(dartResult[i] >= 0 && dartResult[i] <= 9) {
            if(dartResult[i] == 1 && dartResult[i+1] == 0) {
                temp = 10;
                i++;
            } else {
                temp = dartResult[i];
            }
        }
        else if(dartResult[i] === 'S') {
            answer.push(temp);
        }
        else if(dartResult[i] === 'D') {
            answer.push(Math.pow(temp, 2));
        }
        else if(dartResult[i] === 'T'){
            answer.push(Math.pow(temp, 3));
        }
        else if(dartResult[i] == '#') {
           answer[answer.length-1] *= -1;
        }
        else if(dartResult[i] == '*') {
            answer[answer.length-1] *= 2;
            answer[answer.length-2] *= 2;
        }
    }
    for(let j = 0; j < answer.length; j++) {
        sum += Number(answer[j]);
    }
    return sum;
}

0개의 댓글