Balloons are [xstart, xend] on the x-axis. An arrow at x bursts all balloons where xstart ≤ x ≤ xend. Return the minimum arrows to burst all balloons.
[[10,16],[2,8],[1,6],[7,12]]2endballoon.start > arrowPos → new arrow at balloon.endShooting at the end of the first balloon maximizes the chance to hit overlapping balloons. Any balloon with start ≤ arrowPos gets burst. Same logic as Non-Overlapping Intervals.