add: 220220 [golang] + backport 1.17
This commit is contained in:
parent
b40a7393cc
commit
ec3020b2dc
|
|
@ -0,0 +1,25 @@
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
module golang
|
module golang
|
||||||
|
|
||||||
go 1.18
|
go 1.17
|
||||||
|
|
||||||
require github.com/emirpasic/gods v1.12.0
|
require github.com/emirpasic/gods v1.12.0
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue