💻 입력 조건

  • 첫째 줄에 집의 수 N이 자연수로 주어진다. (1≤N≤200,000) 둘째 줄에 N채의 집에 위치가 공백을 기준으로 구분되어 1이상 100,000이하의 자연수로 주어진다.

💻 출력 조건

  • 첫째 줄에 안테나를 설치할 위치의 값을 출력한다. 단, 안테나를 설치할 수 있는 위치 값으로 여러 개의 값이 도출될 경우 가장 작은 값을 출력한다.

💻 입력 예시

4
5 1 7 9

💻 출력 예시

5

📖 문제 해결
이 문제는 집들의 위치들 중에서 중간값이 되는 위치에 안테나를 설치해야 모든 집까지의 거리가 최소가 된다는 것을 이용하여 해결할 수 있는 문제입니다. 집들의 위치들 중에서 중간값이 되는 위치를 찾기 위해 모든 집들의 위치를 정렬한 후 중간값이 되는 위치를 출력하도록 하여 문제의 요구사항을 충족하였습니다.

# n을 입력받기
n = int(input())

# 집의 위치 정보 입력받기
house = list(map(int,input().split()))
house.sort()

# 안테나를 설치할 위치로 집들의 위치의 중간값 선택하기
if len(house) % 2 == 0:
    min_index = len(house)//2 - 1
else:
    min_index = len(house)//2

# 안테나를 설치할 위치 출력
print(house[min_index])
profile
AI를 공부하고 있는 학생입니다:)

0개의 댓글