본문 바로가기

컴퓨터/백준 알고리즘

백준 알고리즘 - 18110번: solved.ac [Java]

문제: https://www.acmicpc.net/problem/18110

 

18110번: solved.ac

5명의 15%는 0.75명으로, 이를 반올림하면 1명이다. 따라서 solved.ac는 가장 높은 난이도 의견과 가장 낮은 난이도 의견을 하나씩 제외하고, {5, 5, 7}에 대한 평균으로 문제 난이도를 결정한다.

www.acmicpc.net

1. 코드

import java.io.*;
import java.util.*;
public class Main {
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
		int[] arr = new int[Integer.parseInt(bf.readLine())];
		for(int i = 0; i < arr.length; i++)
			arr[i] = Integer.parseInt(bf.readLine());
		Arrays.sort(arr);
		int exp = (int) Math.round(arr.length * 15 / 100.0);
		int sum = 0;
		for(int i = exp; i < arr.length - exp; i++)
			sum += arr[i];
		System.out.println(Math.round(sum / (arr.length - exp * 2.0)));
	}
}

2. 설명

BufferedReader를 사용하는 것 말고는 특별히 언급할 것이 없다.