Minimum Number of Arrows to Burst Balloons
MediumArrayGreedySorting
Solution
export function findMinArrowShots(points: number[][]): number {
points.sort(([, end1], [, end2]) => end1 - end2);
let totalArrowShot = 0;
let lastPoint = 0;
for (const [startPoint, endPoint] of points) {
if (totalArrowShot === 0 || lastPoint < startPoint) {
totalArrowShot += 1;
lastPoint = endPoint;
}
}
return totalArrowShot;
}