숫자 쌍으로 선분의 범위들을 입력받고 선분이 가장 많이 겹치는 부분에서 겹쳐있는 선분의 개수를 출력하는 문제입니다.
import sys
import heapq
input = sys.stdin.readline
N = int(input())
segment = []
heap = []
for i in range(N):
segment.append(tuple(map(int, input().split())))
segment.sort()
maxLen = 0
for s, e in segment:
while heap and heap[0] <= s:
heapq.heappop(heap)
heapq.heappush(heap, e)
if maxLen < len(heap):
maxLen = len(heap)
print(maxLen)