Skip to content

Commit 1943895

Browse files
aQuaaQua
authored andcommitted
759 finish. 58ms
1 parent 4ab91dd commit 1943895

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

Algorithms/0759.set-intersection-size-at-least-two/set-intersection-size-at-least-two.go

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,23 @@ func intersectionSizeTwo(intervals [][]int) int {
2424
n := len(intervals)
2525

2626
for i := 1; i < n; i++ {
27-
curr := intervals[i]
28-
if left < curr[0] && curr[0] <= right {
27+
a, b := intervals[i][0], intervals[i][1]
28+
// 当 b == intervals[i-1][1] 什么都没有发生
29+
// 只有出现了新 b 时,才需要讨论
30+
// 根据排序规则
31+
// left < a 意味着出现了新 b
32+
if left < a && a <= right {
2933
res++
30-
// 原先的 left 没有包含在 curr
34+
// 原先的 left 没有包含在 intervals[i]
3135
// 新 left = right
3236
left = right
33-
// 新 right = curr[1]
34-
right = curr[1]
35-
} else if curr[0] > right {
36-
// left 和 right 都没有包含在 curr
37+
// 新 right = intervals[i][1]
38+
right = b
39+
} else if right < a {
40+
// left 和 right 都没有包含在 intervals[i]
3741
res += 2
38-
left = curr[1] - 1
39-
right = curr[1]
42+
left = b - 1
43+
right = b
4044
}
4145
}
4246

0 commit comments

Comments
 (0)