코딩테스트
코딩테스트 연습 > 2018 KAKAO BLIND RECRUITMENT[1차] > 다트 게임
안양사람
2020. 7. 21. 19:52
728x90
SMALL
풀이
function solution(dartResult) {
let arr=[];
for(let i=0;i<dartResult.length;i++){
if(dartResult.slice(i,i+2)=="10"){
arr.push(10);
i++;
} else if(!isNaN(dartResult[i])){
arr.push(dartResult[i]*1)
} else if(dartResult[i]==="D"){
arr.splice(arr.length-1,1,Math.pow(arr[arr.length-1],2));
} else if(dartResult[i]==="T"){
arr.splice(arr.length-1,1,Math.pow(arr[arr.length-1],3));
} else if(dartResult[i]==="*"){
if(arr.length===1){
arr.splice(arr.length-1,1,arr[arr.length-1]*2);
}else{
arr.splice(arr.length-2,2,arr[arr.length-2]*2,arr[arr.length-1]*2);
}
} else if(dartResult[i]==="#"){
arr.splice(arr.length-1,1,arr[arr.length-1]*-1);
}
}
let answer=0;
for(let i=0;i<arr.length;i++){
answer+=arr[i];
}
return answer;
}
지금 내실력으론 푸는게 겨우였다. 나중에 풀이를 깔끔하게 정리해서 올려야겠다.
문제가 생각해보면 간단한 문젠데 생각보다는 시간을 썼다.
728x90
LIST