代码随想录第三十天刷题
class Solution:
def findMinArrowShots(self, points: List[List[int]]) -> int:
if len(points) == 0: return 0
points.sort(key = lambda x: x[0])
result = 1
for i in range(1, len(points)):
if points[i][0] > points[i - 1][1]:
result += 1
else:
points[i][1] = min(points[i - 1][1], points[i][1])
return result
# ---------- 区间贪心排序 ----------
# points.sort(key=lambda x: x[0])
#
# 含义:
# 1. sort:让区间有序
# 2. key:指定排序依据
# 3. lambda x: x[0]:按左端点排序
#
# 为什么用左端点?
# 贪心策略:从左到右射箭
