-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy path452.cpp
More file actions
23 lines (23 loc) · 778 Bytes
/
Copy path452.cpp
File metadata and controls
23 lines (23 loc) · 778 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Solution {
public:
int findMinArrowShots(vector<pair<int, int>>& points) {
sort(points.begin(), points.end(), [](pair<int, int>& p1, pair<int, int>& p2){
return p1.first < p2.first;
});
if (points.size() == 0)
return 0;
int start = points[0].first, end = points[0].second, count = 0;
for (int i = 1; i < points.size(); ++i) {
if (max(points[i].first, start) <= min(points[i].second, end)) {
start = max(points[i].first, start);
end = min(points[i].second, end);
}
else {
++count;
start = points[i].first;
end = points[i].second;
}
}
return count + 1;
}
};