[C++] 백준 18110 solved.ac

semin·2023년 11월 6일
0

https://www.acmicpc.net/problem/18110
제목 : solved.ac
난이도 : Silver IV

풀이

사람들의 난이도 의견이 하나라도 있으면 30%의 절사평균을 낸다고 한다.
아래 순서대로 작성했다.

  1. n이 주어지면 n의 15%를 구하고 반올림 한다.
  2. 주어지는 난이도 평가를 오름차순으로 정렬한다.
  3. 반올림한 하위, 상위 15%를 제외한 모든 점수의 평균을 낸다.
#include <iostream>
#include <vector>
#include <cmath>
#include <algorithm>

using namespace std;

int main()
{
    int n;
    cin >> n;
    if (n == 0) cout << 0;
    else {
        vector<int> rate(n, 0);
        for (int i = 0; i < n; i++) {
            cin >> rate[i];
        }
        sort(rate.begin(), rate.end());
        int t = round((double)n / 100 * 15), divnum = n - (t * 2), sum = 0;
        for (int i = t; i < n - t; i++) {
            sum += rate[i];
        }
        cout << round((double)sum / divnum);
    }
}

profile
게임 프로그래밍 공부

0개의 댓글

관련 채용 정보