문제 : https://www.acmicpc.net/problem/4344
4344번: 평균은 넘겠지
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
www.acmicpc.net
Sol )
1. 배열을 순회하면서 누적합을 계산한 뒤 n으로 나눠 평균을 계산
2. 다시 한번 배열을 순회하면서 평균보다 큰 값의 개수를 카운트
3. 2에서 구한 횟수 / n * 100을 소수점 셋째 자리까지 변환해서 양식에 맞춰 출력 ( 템플릿 문자열 활용 )
소스코드 )
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().split('\n');
let c,n,point;
let total;
let average;
let cnt;
c = parseInt(input[0]);
for (let i = 1 ; i<input.length-1 ; i++){
input[i] = input[i].split(' ');
n = Number(input[i][0]);
total = 0;
average = 0;
cnt = 0;
for (let j = 1 ; j<input[i].length ; j++){
total += parseInt(input[i][j]);
}
average = total / n;
for (let j = 1 ; j<input[i].length ; j++){
if (average < Number(input[i][j])){
cnt += 1
};
};
console.log(`${((cnt/n)*100).toFixed(3)}%`);
}
'Problem Solving > boj.kr (JS)' 카테고리의 다른 글
[BOJ / 자바스크립트] 1065 : 한수 (0) | 2022.02.13 |
---|---|
[BOJ / 자바스크립트] 4673 : 셀프 넘버 (0) | 2022.02.07 |
[BOJ / 자바스크립트] 8958 : OX 퀴즈 (0) | 2022.02.07 |
[BOJ / 자바스크립트] 1546 : 평균 (0) | 2022.02.07 |
[BOJ / 자바스크립트] 3052 : 나머지 (0) | 2022.02.07 |
댓글