class Solution {
public:
vector<vector<int>> merge(vector<vector<int>>& intervals) {
vector<vector<int>> res;
sort(intervals.begin(),intervals.end());
int st=-2e4,ed=-2e4;
for(auto item:intervals) {
if(ed<item[0]) {
if(st!=-2e4) res.push_back({st,ed});
st=item[0],ed=item[1];
}
else ed=max(ed,item[1]);
}
if(st!=-2e4) res.push_back({st,ed});
return res;
}
};