시간초과 안하려고 저번에 count 정렬했던 방식을 이용하려고 하니까 너무 어려웠다ㅠ
간간이 참고한 천재같은 풀이..
내가 보기에 내 풀이는 넘나 더러워보인닷..
그래도 풀었으니까...기특해 내 자신~
그리고 배운 것이 엄청 많았다..!!!
import sys
n = int(sys.stdin.readline().rstrip('\n'))
number = [0]*8001
num_list = []
mean, center, max_idx, min_idx = 0,-1,0,0
check_num = n//2
for _ in range(n):
number[int(sys.stdin.readline())+4000] += 1
for i in range(len(number)):
mean += (i-4000)*number[i]
if number[i] != 0:
check_num -= number[i]
if center==-1 and check_num < 0:
center = i-4000
print(round(mean/n))
print(center)
max_num = max(number)
if number.index(max_num)+number[::-1].index(max_num) != 8000:
print(number[number.index(max_num)+1:].index(max_num)+number.index(max_num)-3999)
else:
print(number.index(max_num)-4000)
for idx,val in enumerate(number[::-1]):
if val != 0:
max_idx = idx
break
for idx,val in enumerate(number):
if val != 0:
min_idx = idx
break
print(8000-max_idx-min_idx)