티스토리 뷰

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

 

2108번: 통계학

첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다.

www.acmicpc.net

const input = require('fs').readFileSync('./dev/stdin').toString().trim().split('\n').map(Number);
const N = input.shift();
input.sort((a, b) => a - b);

console.log(Math.round(input.reduce((r, v) => r + v, 0) / N).toString());
console.log(input[Math.floor(N / 2)].toString());

const frequency = Object.entries(
	input.reduce((r, v) => {
		if (r[v]) r[v]++;
		else r[v] = 1;
		return r;
	}, {})
).sort((a, b) => {
	if (a[1] == b[1]) {
		return a[0] - b[0];
	} else {
		return b[1] - a[1];
	}
});
if (frequency.length > 1 && frequency[0][1] == frequency[1][1]) {
	console.log(frequency[1][0]);
} else {
	console.log(frequency[0][0]);
}

console.log((input[input.length - 1] - input[0]).toString());
728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함