diff --git a/leetcode.com-explore-challenge-card-september-leetcoding-challenge-555-week-2-september-8th-september-14th-3458 b/leetcode.com-explore-challenge-card-september-leetcoding-challenge-555-week-2-september-8th-september-14th-3458 new file mode 100644 index 0000000..62cf206 --- /dev/null +++ b/leetcode.com-explore-challenge-card-september-leetcoding-challenge-555-week-2-september-8th-september-14th-3458 @@ -0,0 +1,24 @@ +class Solution { +public: + vector> insert(vector>& intervals, vector& newInterval) { + + vector> result; + int i = 0 , n = intervals.size(); + + while(i < n && intervals[i][1] < newInterval[0]) result.push_back(intervals[i++]); + + vector mi = newInterval; + while(i < n && intervals[i][0] <= newInterval[1]){ + mi[0] = min(mi[0] , intervals[i][0]); + mi[1] = max(mi[1] , intervals[i++][1]); + } + + result.push_back(mi); + + while(i < n ) result.push_back(intervals[i++]); + + return result; + } +}; + +