For problem statement at 1000-1999/1200-1299/1240-1249/1249/problemD1.txt this is a correct solution, but verifier at 1000-1999/1200-1299/1240-1249/1249/verifierD1.go ends with case 1 failed
input:
10 1
52 159
186 194
135 163
107 153
116 137
138 186
135 162
78 192
27 41
174 195
expected:
7
4 1 7 3 8 2 10
got:
7
8 1 4 3 7 10 2
exit status 1 can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
"sort"
)
func main() {
in := bufio.NewReader(os.Stdin)
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
var n, k int
if _, err := fmt.Fscan(in, &n, &k); err != nil {
return
}
l := make([]int, n+1)
r := make([]int, n+1)
for i := 1; i <= n; i++ {
fmt.Fscan(in, &l[i], &r[i])
}
removed := make([]bool, n+1)
var ans []int
for x := 1; x <= 200; x++ {
var list []int
for i := 1; i <= n; i++ {
if !removed[i] && l[i] <= x && x <= r[i] {
list = append(list, i)
}
}
if len(list) > k {
sort.Slice(list, func(a, b int) bool {
return r[list[a]] > r[list[b]]
})
t := len(list) - k
for j := 0; j < t; j++ {
removed[list[j]] = true
ans = append(ans, list[j])
}
}
}
fmt.Fprintln(out, len(ans))
if len(ans) > 0 {
for i, v := range ans {
if i > 0 {
fmt.Fprint(out, " ")
}
fmt.Fprint(out, v)
}
fmt.Fprintln(out)
} else {
fmt.Fprintln(out)
}
}
```