ํ’€์ด


์‚ฐ์ˆ ํ‰๊ท , ์ค‘์•™๊ฐ’, ๋ฒ”์œ„ ๋Š” ํŒŒ์ด์ฌ ๊ธฐ๋ณธ ํ•จ์ˆ˜๋กœ ์–ด๋ ต์ง€์•Š๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค.

์ตœ๋นˆ๊ฐ’ ์—ญ์‹œ ์ •์ˆ˜ ๋ฒ”์œ„๊ฐ€ -4000 ์—์„œ +4000 ๊นŒ์ง€ ์ฃผ์–ด์ ธ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— 0 ์œผ๋กœ ๊ตฌ์„ฑ๋œ 8001๊ฐœ ์งœ๋ฆฌ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด ์ธ๋ฑ์Šค๊ฐ’์„ ํ†ตํ•ด ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์—ˆ์ง€๋งŒ, collections ๋ชจ๋“ˆ์„ ํ†ตํ•ด์„œ ๋” ๊ฐ„ํŽธํ•˜๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

์†Œ์Šค์ฝ”๋“œ


import collections
 
N = int(input())
nums = sorted([int(input()) for _ in range(N)])
most = collections.Counter(nums).most_common()
 
print(int(round(sum(nums)/N)))
print(nums[N//2])
if len(most) > 1:
    print(most[1][0]) if most[0][1] == most[1][1] else print(most[0][0])
else:
    print(most[0][0])
print(max(nums) - min(nums))

References