💡문제접근
- 정렬 후 중앙값을 찾으면 되는 문제다. 이 때, 원소의 개수가 짝수일 때와 홀수일 때 중앙값을 찾는 과정이 다른 것에 초점을 맞추고 접근했다.
- [[백준] 18310번 안테나]와 동일한 유형이다.
💡코드(메모리 : 33000KB, 시간 : 56ms)
import sys
input = sys.stdin.readline
N = int(input())
li = list(map(int, input().split()))
li.sort()
if len(li) % 2 != 0:
print(li[len(li) // 2])
else:
mid_1 = (len(li) // 2) - 1
mid_2 = len(li) // 2
sum_mid_1 = 0
sum_mid_2 = 0
for i in li:
sum_mid_1 += abs(i - li[mid_1])
for i in li:
sum_mid_2 += abs(i - li[mid_2])
if sum_mid_1 == sum_mid_2:
print(li[mid_1])
elif sum_mid_1 > sum_mid_2:
print(li[mid_2])
else:
print(li[mid_1])
💡소요시간 : 2m