← Home
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)
	}
}