편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
68번째 줄: | 68번째 줄: | ||
int arr[] = new int[size]; | int arr[] = new int[size]; | ||
int counts[] = new int[8001]; | int counts[] = new int[8001]; | ||
int | int n, sum=0, min=4000, max=-4000, max_count=0; | ||
for(i=0; i<size; i++) { | for(int i=0; i<size; i++) { | ||
n = Integer.parseInt(br.readLine()); | |||
arr[i] = | arr[i] = n; | ||
sum += | sum += n; | ||
if( | if( n>max ) max=n; | ||
if( | if( n<min ) min=n; | ||
counts[4000+ | counts[4000+n]++; | ||
if( counts[4000+ | if( counts[4000+i]>max_count ) max_count = counts[4000+i]; | ||
} | } | ||
int | int max_count_items = 0; | ||
for(i=min; i<=max | for(int i=min; i<=max; i++) { | ||
if( counts[4000+i] != max_count ) continue; | if( counts[4000+i]==max_count ) max_count_items++; | ||
} | |||
int target_count = 0; | |||
int freq = 0; | |||
for(int i=min; i<=max; i++) { | |||
if( counts[4000+i]!=max_count ) continue; | |||
target_count++; | |||
if( target_count == max_count_items || target_count == 2 ) { | |||
freq = i; break; | |||
} | |||
} | } | ||
Arrays.sort(arr); | Arrays.sort(arr); | ||
System.out.println( Math.round(1.0D*sum/size) ); | System.out.println( Math.round(1.0D*sum/size) ); | ||
System.out.println( arr[size/2] ); | System.out.println( arr[size/2] ); | ||
System.out.println( | System.out.println( freq ); | ||
System.out.println( max-min ); | System.out.println( max-min ); | ||
} | } |