https://www.acmicpc.net/problem/1374
끝시간보다 시작시간이 크면 같은 강의실에 들어갈 수 있다는 의미이므로, 앞시간은 빼도 된다. 즉, 모든 끝시간을 넣었을 때, heapq가 가장 길었을때가 겹치는 시간이 제일 많은 시간대이므로 강의실이 가장 많이 쓰이던 상황이니 최대값을 계속 갱신해주면 된다.
#https://www.acmicpc.net/problem/1374
import sys
import heapq
input = sys.stdin.readline
N = int(input())
s = [list(map(int,input().split())) for _ in range(N)]
s.sort(key=lambda x : x[1])
hq = []
cnt = 0
for i in s:
while hq and hq[0] <= i[1]:
heapq.heappop(hq)
heapq.heappush(hq,i[2])
cnt = max(cnt, len(hq))
print(cnt)
회고.
문제 접근하여 답은 도출했으나 메모리 초과가 떴다... 그 이후 어떻게 접근해야될지 감이 잡히지 않아 결국 답을 보고 해결했다....하.....
'PS' 카테고리의 다른 글
[Progammers] Python 프로그래머스 모의고사(42840) (0) | 2024.11.18 |
---|---|
[Progammers] Python 프로그래머스 모의고사(42840) (0) | 2024.11.16 |
[BOJ] Python 백준 센서(2212) (1) | 2024.11.14 |
[BOJ] Python 백준 밤양갱(31926) (0) | 2024.11.13 |
[BOJ] Python 백준 게임을 만든 동준이(2847) (0) | 2024.11.12 |
댓글