ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4344. [JavaScript]평균은 넘겠지
    JavaScript_알고리즘/Bronze I 2024. 6. 17. 19:43

    1. 문제

     

    https://www.acmicpc.net/problem/4344

     

    2. 접근 방법

     

    • 시간 제한: 1초
    • 메모리 제한: 256MB
    • 사칙연산

     

    3. 자바스크립트 코드

     

    // 인풋 처리 부분
    const fs = require("fs");
    let [N, ...input] = fs.readFileSync("./4344.txt").toString().trim().split("\n");
    // input 을 한줄씩 반복분 진행
    for (line of input) {
      // 2차원 배열형태이기 때문에 한번더 Number로 치환
      let group = line.split(" ").map(Number);
      //   Number로 치환한 부분에서 사람수, 점수로 분할
      let [people, ...score] = group;
      //   초기값 선언
      const initalValue = 0;
      //   합을 구하는 reduce 함수 시행
      const total = score.reduce(
        (accmulator, currentValue) => accmulator + currentValue,
        initalValue
      );
      //   평균 구하는데 내림 처리
      const average = Math.floor(total / people);
      //   평균 넘는사람 체크
      let cnt = 0;
      //   평균 넘으면 cnt 변수 +1
      for (sco of score) {
        if (sco > average) {
          cnt += 1;
        }
      }
      //   소수점 아래 3자리까지 고정
      console.log(((cnt / people) * 100).toFixed(3) + "%");
    }

     

    4. 문제를 풀고난 후 생각

     

    • 단순한 사칙연산 문제로 평균, 총합, 백분률을 구할 수 있는지 확인하는 문

     

    5. 문제를 푸는데 도움이 되는 지식

     

    • 사칙연산

    'JavaScript_알고리즘 > Bronze I' 카테고리의 다른 글

    2163. [JavaScript]초콜릿 자르기  (0) 2024.06.17
    9506. [JavaScript]약수들의 합  (0) 2024.06.17

    댓글

Designed by Tistory.