#include <iostream>
#include <string.h>
#include <vector>
#include <list>
#include <cmath>
#include <numeric>
#include <algorithm>
using namespace std;
int main(void) {
int n;
int cut;
cin >> n;
if (n == 0) {
cout << 0;
return 0;
}
vector<int> nums;
for (int i = 0; i < n; i++) {
int num;
cin >> num;
nums.push_back(num);
}
sort(nums.begin(), nums.end());
cut = round(n * 0.15);
double sum = accumulate(nums.begin()+cut, nums.end()-cut, 0);
double level = round(sum / (n - cut*2));
cout << level;
return 0;
}
아이디어 자체는 어렵지 않았다. 파이썬으로만 하다가 c++은 처음 써 봐서 꽤나 헤멨다. 헷갈렸던 부분은, sum을 계산할 때 int로 하면 int/int가 되어 버려서 나눗셈의 결과값 또한 정수가 된다는 것이다. 그래서 double 자료형으로 sum을 지정해 주었다.
round는 cmath 헤더에, sort는 algoritm 헤더에 있다. 나머지는 적절히 필요한 데 쓰기