728x90
문제 : https://leetcode.com/problems/non-overlapping-intervals/description/
난이도 : Medium
인터벌들이 겹치지 않도록 제거해야하는 인터벌 수 구하는 문제!!
풀이
class Solution:
def eraseOverlapIntervals(self, intervals: List[List[int]]) -> int:
count = 0
intervals.sort()
for i in range(len(intervals) - 1):
if intervals[i + 1][0] < intervals[i][1]:
count += 1
intervals[i + 1][1] = min(intervals[i + 1][1],intervals[i][1])
return count
우선 인터벌들을 정렬하고 겹치는 구간이 발생하면 카운트한다.
그리고 겹치는 구간의 우좌표를 더 적은 걸로 땡겨준다.
카운트 하는 것까지는 알겠는데, 그 뒤를 어떻게 체크해야 하나 고민하다가 결국 다른 사람 풀이 참고...ㅎㅎㅎㅎㅎ
728x90