프론트엔드 센트럴파크 (☞゚ヮ゚)☞

ox 퀴즈 본문

Algorism

ox 퀴즈

자라나라나무나무나 2022. 7. 25. 16:16

정답을 맞췄을 경우 문제당 1점을 부여하며, 연속적으로 맞출 경우 연속한 정답 개수 만큼의 가산점을 부여해준다.

표 윗줄이 채점 아랫줄이 점수

0 1 1 1 0 1 1 0 0
1 0 1 2 3 0 1 2 0 0
function answer(mark) {
  let result = 0;

  // 1 -> 1점, 연속한 1인 경우 연속한 count 만큼 점수 추가
  let score = 0;
  for (let i = 0; i < mark.length; i++) {
    if (mark[i] == 1) {
      result += ++score;
    } else {
      score = 0;
    }
  }

  return result;
}

let input = [

  [1, 0, 1, 1, 1, 0, 1, 1, 0, 0],

  [1, 1, 0, 1, 1, 0, 1, 1, 1, 1],

  [1, 1, 1, 1, 1, 0, 0, 1, 1, 0],
];

for (let i = 0; i < input.length; i++) {
  console.log(`#${i + 1} ${answer(input[i])}`);
}

풀이 


   * 0 -> 1: result(1), score(1)
   * 1 -> 0: result(0), score(0)
   * 2 -> 1: result(2), score(1)
   * 3 -> 1: result(4), score(2)
   * 4 -> 1: result(7), score(3)
   * 5 -> 0: result(7), score(0)
   * 6 -> 1: result(8), score(1)
   * 7 -> 1: result(10), score(2)

'Algorism' 카테고리의 다른 글

두 자연수를 입력받아 각 자리의 빈도수 구하기  (0) 2022.07.26
벽돌 옮기기  (0) 2022.07.26
나무 그리기  (0) 2022.07.22
배열의 element들의 값이 많을 때, 정해진 합 구하기  (0) 2022.07.22
두 수 최대 합  (0) 2022.07.21
Comments