leetcode_986
Solutions
class Solution {
public:
vector<vector<int>> intervalIntersection(vector<vector<int>>& A, vector<vector<int>>& B) {
if (!A.size() || !B.size()) return {};
A.insert(A.end(), B.begin(), B.end());
sort(A.begin(), A.end());
int prevst = A[0][0], preved = A[0][1];
vector<vector<int>> res;
for (int i = 1; i < A.size(); i++) {
auto st = A[i][0], ed = A[i][1];
if (st >= prevst && ed <= preved)
res.push_back({st, ed});
else {
if (st <= preved)
res.push_back({st, preved});
prevst = st;
preved = ed;
}
}
return res;
}
};Last updated