https://leetcode.com/problems/minimum-number-of-arrows-to-burst-balloons/
class Solution:
def findMinArrowShots(self, points: List[List[int]]) -> int:
points.sort()
ans, cur, cut = 0, points[0][0], points[0][1]
for start, end in points:
if start <= min(cut, end) :
cur, cut = start, min(cut, end)
else :
cur, cut, ans = cut+1, end, ans+1
return ans + 1
귀찮으니까 그냥 O(N)으로 긁도록 하겠습니다.
점들을 계속 받으면서 가장 일찍 끝나는 녀석보다 늦게 시작하는 놈이 나오면 화살 쏴야됨.
댓글 0