Skip to content

top145-#56 #13

@LionCoder4ever

Description

@LionCoder4ever
class Solution {
public:
    vector<vector<int>> merge(vector<vector<int>>& intervals) {
        int n = intervals.size();
        sort(intervals.begin(), intervals.end());
        if (n == 0) return intervals;
        if (n == 1) return intervals;
        vector<vector<int>> ans;
        ans.push_back(intervals[0]);
        for(int i=1;i<n;i++) {
            vector<int> last = ans.back();
            if (intervals[i][0] <= last[1]) {
                vector<int> item;
                item.push_back(last[0]);
                item.push_back(max(last[1],intervals[i][1]));
                ans.pop_back();
                ans.push_back(item);
            } else {
                ans.push_back(intervals[i]); 
            }
        }
        return ans;
    }
};

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions