코드노트

자바스크립트 배열 문제 풀이 - 문제점수 채점, 가산점 계산 본문

Code note/자바스크립트 알고리즘 문제풀이

자바스크립트 배열 문제 풀이 - 문제점수 채점, 가산점 계산

코드노트 2022. 8. 23. 22:10

문제 점수를 채점하는 프로그램을 만들어야한다.

1은 1점 0은 0점

연속한 정답 개수가 있으면 가산점으로 1점씩 더 받게 된다.

채점 : [ 1, 1, 0, 1, 1,  0, 1,  1,  1,  1 ]

점수 : [ 1, 2, 0, 1, 2, 0, 1, 2, 3, 4 ]

 

for문을 통해서 이중for문을 하면서 비교를 해서 점수를 넣을 생각을 했다..

아직도 나는 멀었나보다......

간단한 방법이 있었다..

 

 

  let score = 0;
  for (let i = 0; i < mark.length; i++) {
    if (mark[i] == 1) {
      result += ++score;
    } else {
      score = 0;
    }
  }

- 변수를 만들어서 연속 된 정답이 있으면 ++이 되도록 해준다.

- 배열의 점수별로 1이 맞으면 결과값에 ++로 넣어주고 만약 0이면 다시 0으로 초기화를 해준다.

index 정답 결과값 score
0 1 1 1
1 1 3 2
2 0 3 0
3 1 4 1
4 1 6 2
5 0 6 0
6 1 7 1
7 1 9 2
8 1 12 3
9 1 16 4

 

score가 올라간만큼 결과값에 더해주면서 최종 결과값은 16이 나온다.