1번문제가 맞는 경우에는 1점으로 계산한다. 앞의 문제에 대해서 답을 틀리다가 처음 맞는 문제는 1점으로 계산한다. 연속해서 답이 맞는 경우에는 2번째 문제는 2점, 3번째 문제는 3점,...k번째 문제는 k점으로 계산한다. 틀린 문제는 0점이다.
function solution(arr){
//연속해서 맞으면 score+= 1
let score = 1
let check = 0
for(let i =1; i< arr.length; i++){
if(arr[i] === 0){
score += 0
check = 0
} else if(arr[i-1] === 0 && arr[i] === 1){ //처음 맞았을 때
score += 1
check += 1
} else { //연속해서 맞았을 때 이전의 1의 개수만큼 점수가올라간다.
check += 1
score += check
}
}
return score
}
let arr=[1, 0, 1, 1, 1, 0, 0, 1, 1, 0];
console.log(solution(arr));
function solution(arr){
let answer=0, cnt=0;
for(let x of arr){
if(x===1){
cnt++;
answer+=cnt;
}
else cnt=0;
}
return answer;
}
let arr=[1, 0, 1, 1, 1, 0, 0, 1, 1, 0];
console.log(solution(arr));
답안 코드는 세상 깔끔하다 ㅜㅜ
Array.from()
배열 얕은 복사 메서드