728x90
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class BJ18110 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
//앞뒤로 제거해야하는 15%씩 계산.
int delete= (int) Math.round(n * 0.15);
//리스트 생성 후 입력
List<Integer> list = new ArrayList<>();
for (int i = 0; i < n; i++) {
list.add(Integer.parseInt(br.readLine()));
}
//정렬. list이므로 Arrays 말고 Collections.
Collections.sort(list);
//더하기.
int sum = 0;
for (int i = delete; i < n - delete; i++) {
sum += list.get(i);
}
//최종값 계산.
double avg = (double) sum / (n - 2 * delete);
System.out.println(Math.round(avg));
}
}
이 문제에서는
왜 Arrays.sort를 안쓰고 Collections.sort를 쓰는지.
Math.round는 어떻게 쓰는건지
두가지에 집중한다면 쉽게 풀 수 있다.
List를 안쓰면 Array를 사용해 Arrays.sort를 사용할 수 있지만 이것은 안해봤다. time limit에 걸릴수도 있기 때문이다.
728x90
'백준' 카테고리의 다른 글
백준 1966 - Java (0) | 2024.10.13 |
---|---|
백준 1920 - Java (0) | 2024.10.12 |
백준 1699 - Java (0) | 2024.10.05 |
백준 1912 - Java (0) | 2024.10.05 |
백준 15650 - Java (1) | 2024.09.26 |