[프로그래머스]다트게임

LikeChoonsik's·2022년 5월 29일
0
post-thumbnail

문제


풀이

우선 필요한 조건을 정리하자면
숫자인 경우와 영문S,D,T일 경우 *,#일 경우 세가지에 따라 알맞은 조건을 대입해주는 방식으로 생각해서 풀었다.

function solution(dartResult) {
    var answer = 0;
    const answerArray = []
    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){
              //10일 때 오류나서 해결
                sum = 10;
                i++;
            } else {
                sum = dartResult[i]
            }
        }
         else if(dartResult[i] === 'S'){
            answerArray.push(parseInt(sum));
      
        }
        else if(dartResult[i] === 'D'){
            answerArray.push(parseInt(sum)**2);
     
        }
        else if(dartResult[i] === 'T'){
            answerArray.push(parseInt(sum)**3);
           
        }
        else if(dartResult[i] === '#'){
            answerArray[answerArray.length-1] *= -1;
        } else if(dartResult[i] === "*"){
            answerArray[answerArray.length-1] *= 2;
            answerArray[answerArray.length-2] *= 2;
        }
       }
        for(let i = 0; i <answerArray.length; i++){
            answer += Number(answerArray[i])
    }
    return answer;
}
profile
춘식이는 너무 귀엽습니다.

0개의 댓글