https://www.acmicpc.net/problem/2108
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
public class Main{
public static final int ABSOLUTE_VAL = 4000;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int[] arr = new int[n];
int[] cnt = new int[8001];
double sum=0;
int max = Integer.MIN_VALUE;
int mostCntNum = 0;
for(int i=0; i<n; i++){
arr[i] = Integer.parseInt(br.readLine());
cnt[arr[i]+ABSOLUTE_VAL]++;
sum+=arr[i];
}
Arrays.sort(arr);
boolean flag = false;
for(int i=0; i<cnt.length; i++){
if(cnt[i] == 0) continue;
if(max<cnt[i]){ // max값 갱신
max = cnt[i];
mostCntNum = i-ABSOLUTE_VAL;
flag = true;
}
else if(flag && max==cnt[i]){ // 빈도수가 같은 최빈값이 또 나왔을 때
mostCntNum = i-ABSOLUTE_VAL;
flag = false;
}
}
System.out.println(Math.round(sum/n)); // 산술 평균
System.out.println(arr[n/2]); // 중앙값
System.out.println(mostCntNum); // 최빈값
System.out.println(arr[n-1]-arr[0]); // 범위
}
}
'ALGORITHM' 카테고리의 다른 글
[JAVA] 알고리즘 : DFS- 바둑이 승차 (0) | 2022.09.23 |
---|---|
[JAVA] 알고리즘 : DFS- 합이 같은 부분집합 (0) | 2022.09.22 |
[JAVA] 백준 25305번 - 커트라인 (0) | 2022.09.21 |
[JAVA] 백준 10989번 - 수 정렬하기 3(카운팅 정렬) (0) | 2022.09.21 |
[알고리즘] C언어- 힙 정렬(heap sort) (0) | 2022.09.21 |