백준 18110 - solved.ac

황재진·2024년 7월 10일

백준

목록 보기
37/54

절사평균에 대해 이해한다면 쉽게 풀 수 있는 문제입니다.

#include <iostream>
#include <cmath>
#include <algorithm>
#include <vector>

int main()
{
	int cnt;
	std::cin >> cnt;

	if (cnt == 0)
	{
		std::cout << 0;
		return 0;
	}

	std::vector<int> nums;
	for (int i = 0; i < cnt; i++)
	{
		int tmp;
		std::cin >> tmp;
		nums.push_back(tmp);
	}

	std::sort(nums.begin(), nums.end(), [](const int a, const int b) {return a < b; });

	int cut = std::floor(cnt * 0.15f + 0.5f);
	float aver = 0;

	for (int i = cut; i < cnt - cut; i++)
		aver += nums[i];

	aver /= cnt - cut * 2;

	std::cout << std::floor(aver + 0.5f);

	return 0;
}
profile
프로그래밍, 쉐이더 등 이것저것 다해보는 게임 개발자입니다

0개의 댓글