yoondj98   3년 전

import java.io.*;import java.util.*;
public class Main {
public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); int n = Integer.parseInt(br.readLine()); int [] count = new int [8001]; int [] num = new int [n+1]; int cmax = 0; int max_count = 0; int j = 0; int mode = 0; int max = -4000; int sum = 0; int min = 4000; for(int i=1; i<=n; i++){ num[i] = Integer.parseInt(br.readLine()); sum += num[i]; count[num[i]+4000]++; if(cmax<count[num[i]+4000]){ mode = num[i]; cmax = count[num[i]+4000]; max_count = 1; } else if(cmax == count[num[i]+4000]) max_count++;

if(max<num[i]) max = num[i]; if(min>num[i]) min = num[i]; } Arrays.sort(num,1,n+1); if(max_count>=2){ for(int i=1; i <=8000; i++){ if(count[i]==cmax){ ++j; } if(j == 2){ mode = i-4000; break; } } } sb.append((int)Math.round((double)sum/n)+"\n"); sb.append(num[n/2+1]+"\n"); sb.append(mode+"\n"); sb.append(max-min); System.out.println(sb); }}

flappybird   3년 전

38번째 줄 for문에서 i가 1부터 시작해서 최빈값이 -4000일때를 알 수 없을것 같네요

댓글을 작성하려면 로그인해야 합니다.