반응형
해당 포스팅의 문제의 출처는 나동빈님의 이것이 취업을 위한 코딩 테스트 교재를 공부하면서 풀이할 때 본인의 사고 과정 흐름과 문제 풀이를 기록하기 위함 입니다.
문제설명
하단의 링크를 참조하자.
https://www.acmicpc.net/problem/18310
18310번: 안테나
첫째 줄에 집의 수 N이 자연수로 주어진다. (1≤N≤200,000) 둘째 줄에 N채의 집에 위치가 공백을 기준으로 구분되어 1이상 100,000이하의 자연수로 주어진다.
www.acmicpc.net
사고과정
- 시간 내에 풀지 못했다. 주어진 집 리스트에서 정렬 후 중위수 값을 반환하면 되는 것 같았는데 뭔가 아닌 것 같아서 다른 방법을 찾아보다가 포기했다. 간단한 해결책을 떠올렸는데도 이를 확신으로 이어지는 근거를 찾는 게 더 어렵다..
- 주의해야 할 점은 중위수를 구할 때 리스트 개수는 N-1이기 때문에 인덱싱할 때 (N-1) // 2 해주는 것 잊지말기..
풀이(스스로 못 품)
import sys
# n: 집의 개수
n = int(input())
house = list(map(int, input().split()))
house.sort()
res = house[(n-1)//2]
print(res)
반응형
'알고리즘 삽질장' 카테고리의 다른 글
[이코테] 이진 탐색 - 고정점 찾기 (0) | 2021.09.28 |
---|---|
[이코테] 정렬 - 실패율 (0) | 2021.09.28 |
[이코테] DFS - 연구소 (0) | 2021.09.27 |
[이코테] 구현 - 문자열 압축 (0) | 2021.09.26 |
[이코테] 그리디 - 문자열 뒤집기 (0) | 2021.09.26 |