26 lines
426 B
Go
26 lines
426 B
Go
package main
|
|
|
|
import "sort"
|
|
|
|
func removeCoveredIntervals(xs [][]int) int {
|
|
sort.Slice(xs, func(i, j int) bool {
|
|
return (xs[i][1] - xs[i][0]) < (xs[j][1] - xs[j][0])
|
|
})
|
|
|
|
vis := make([]bool, len(xs))
|
|
var ret = len(xs)
|
|
for i, v := range xs {
|
|
for j := 0; j < i; j++ {
|
|
if !vis[j] && xs[j][0] >= v[0] && xs[j][1] <= v[1] {
|
|
vis[j] = true
|
|
ret--
|
|
}
|
|
}
|
|
}
|
|
return ret
|
|
}
|
|
|
|
func main() {
|
|
// Tested in C++ version
|
|
}
|