배운점
dd[i] 는 '0' 문자 인데, 자바스크립트에서는 숫자와 비교연산을 할때 자동으로 형변환이 된다.
if(dd[i]>=0 && dd[i]<=9)
문제풀이
function solution(dartResult) {
var answer = 0;
let dd = dartResult
let ans = []
let idx = 0
for (let i=0; i<dd.length; i++){
// 자바스크립트의 자동 형변환 숫자와 비교할때의
if(dd[i]>=0 && dd[i]<=9){
if(dd[i]==1 && dd[i+1]==0){
i++
ans.push(10)
}
else{
ans.push(+dd[i])
}
}
else if(dd[i]=='S'){
ans[idx] = ans[idx]
idx ++
}
else if(dd[i]=='D'){
ans[idx] = ans[idx] *ans[idx]
idx ++
}
else if(dd[i]=='T'){
ans[idx] = ans[idx] *ans[idx] *ans[idx]
idx ++
}
else if(dd[i]=='*'){
if(idx==1){
ans[idx-1]*=2
}
else {
ans[idx-2]*=2
ans[idx-1]*=2
}
}
else if(dd[i]=='#'){
ans[idx-1]=-ans[idx-1]
}
}
ans.map(el=>answer+=el)
return answer;
}
'공부기록 > 자바스크립트 코딩테스트' 카테고리의 다른 글
[프로그래머스/JS] 비밀지도 (0) | 2022.06.23 |
---|---|
[프로그래머스/JS] 최소직사각형 (0) | 2022.06.23 |
[프로그래머스/JS] 나머지가 1이 되는 수 찾기 (0) | 2022.06.22 |
자바스크립트 splice , reverse , flat (0) | 2022.06.22 |
[프로그래머스/JS] 문자열 내 마음대로 정렬하기 (0) | 2022.06.21 |