[백준]18310-그리디(안테나)

shs131·2022년 4월 26일
0

알고리즘

목록 보기
6/6

문제풀이

문제 https://www.acmicpc.net/problem/18310

  1. 인풋을 받고 집들의 좌표를 오름차순으로 만들어준다
n = int(input())
house = list(map(int, input().split()))
house.sort()
  1. 집들의 좌표의 중간값을 구해주면 되는 문제다. 주의해야 할 점은 최소 거리를 가지는 좌표가 여러 개일 경우에 좌표가 작은 값을 출력해야 한다.
  • 집의 개수가 홀수일 떄와 짝수일 때를 생각해야한다.
  • 홀수일 때에는 그대로 중간값을 출력해주면 되지만 짝수일 때에는 중간값에 가까운 두 좌표 중 작은 값을 출력해줘야 한다. 따라서 n-1에 //을 이용해 몫을 구해주면 된다
print(house[(n-1)//2])

마무리

복잡하게 생각하면 끝이 없고 간단하게 생각하면 쉬운 문제였다.

profile
개발자가 되고 싶은 1인

0개의 댓글