Skip to content

Commit 1266eca

Browse files
authored
insert interval solution
1 parent 1c3c75d commit 1266eca

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

insert-interval/yhkee0404.swift

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
class Solution {
2+
func insert(_ intervals: [[Int]], _ newInterval: [Int]) -> [[Int]] {
3+
var ans: [[Int]] = []
4+
var i = 0
5+
while i != intervals.count && intervals[i][1] < newInterval[0] {
6+
ans.append(intervals[i])
7+
i += 1
8+
}
9+
var newInterval = newInterval
10+
if i != intervals.count && intervals[i][0] <= newInterval[0] {
11+
newInterval[0] = intervals[i][0]
12+
newInterval[1] = max(newInterval[1], intervals[i][1])
13+
i += 1
14+
}
15+
while i != intervals.count && intervals[i][1] <= newInterval[1] {
16+
i += 1
17+
}
18+
if i != intervals.count && intervals[i][0] <= newInterval[1] {
19+
newInterval[1] = intervals[i][1]
20+
i += 1
21+
}
22+
ans.append(newInterval)
23+
while i != intervals.count {
24+
ans.append(intervals[i])
25+
i += 1
26+
}
27+
return ans
28+
}
29+
}

0 commit comments

Comments
 (0)