diff --git a/golang/2202/220220.go b/golang/2202/220220.go new file mode 100644 index 0000000..dd42750 --- /dev/null +++ b/golang/2202/220220.go @@ -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 +} diff --git a/golang/go.mod b/golang/go.mod index 2d48c8b..a87e505 100644 --- a/golang/go.mod +++ b/golang/go.mod @@ -1,5 +1,5 @@ module golang -go 1.18 +go 1.17 require github.com/emirpasic/gods v1.12.0