블로그를 이전하였습니다. 2023년 11월부터 https://bluemiv.github.io/에서 블로그를 운영하려고 합니다. 앞으로 해당 블로그의 댓글은 읽지 못할 수 도 있으니 양해바랍니다.
반응형
문제의 저작권은 백준 알고리즘(https://www.acmicpc.net/)에 있습니다
문제
풀이
반 평균을 먼저 구한뒤에 각 학생의 점수를 하나씩 비교하여, 평균보다 크면 카운트를 증가시켜주도록 했다.
const solution = (input) => {
return [...Array(+input[0]).keys()]
.map((idx) => {
const list = input[idx + 1].split(' ').map((c) => +c);
const studentCount = list[0];
const scores = list.slice(1, list.length);
const avg = scores.reduce((acc, n) => acc + n, 0) / studentCount;
return `${(
(scores.reduce((cnt, n) => {
if (avg < n) {
cnt += 1;
}
return cnt;
}, 0) /
studentCount) *
100
).toFixed(3)}%`;
})
.join('\n');
};
const input = [];
require('readline')
.createInterface({ input: process.stdin })
.on('line', (line) => input.push(line))
.on('close', (_) => {
console.log(solution(input));
process.exit(0);
});
전체 코드
https://github.com/bluemiv/Algorithm/blob/master/baekjoon/nodejs/src/ex04/ex4344.js
풀이 결과
관련 글
2022.07.21 - [Algorithm/Beakjoon] - jest 단위테스트를 이용하여 백준 알고리즘 문제 편하게 풀기
반응형
'Algorithm > Beakjoon' 카테고리의 다른 글
백준 1065번 / 한수 (nodejs 알고리즘 풀이) (0) | 2022.08.16 |
---|---|
백준 4673번 / 셀프 넘버 (nodejs 알고리즘 풀이) (0) | 2022.08.15 |
백준 8958번 / OX퀴즈 (nodejs 알고리즘 풀이) (0) | 2022.08.13 |
백준 1546번 / 평균 (nodejs 알고리즘 풀이) (0) | 2022.08.12 |
백준 3052번 / 나머지 (nodejs 알고리즘 풀이) (0) | 2022.08.11 |