Dư đoạn

Xem PDF

Điểm: 1700 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho \(n\) đoạn thẳng trên trục tọa độ OX. Đoạn thứ \(i\)\([l_i, r_i]\) và che phủ các điểm \(j\) với \(l_i \leq j \leq r_i\).

Hãy bỏ đi ít nhất các đoạn sao cho với mọi điểm trên trục OX có tối đa \(k\) đoạn thẳng che phủ nó.

Input

  • Dòng đầu tiên chứa hai số nguyên \(n\)\(k\) (\(1 \leq k \leq n \leq 2 \cdot 10^5\)).
  • Trong \(n\) dòng tiếp theo, dòng thứ \(i\) chứa hai số nguyên \(l_i\)\(r_i\) (\(1 \leq l_i \leq r_i \leq 2 \cdot 10^5\)).

Output

  • Dòng đầu tiên chứa số nguyên \(m\) là số lượng đoạn tối thiểu cần loại bỏ.
  • Dòng tiếp theo chứa \(m\) số nguyên phân biệt \(p_1, p_2, p_3, \ldots, p_m\) (\(1 \leq p_i \leq n\)) là chỉ số của các đoạn bị loại bỏ theo bất kì thứ tự nào. Nếu có nhiều đáp án, hãy in một đáp án bất kì.

Scoring

  • Subtask \(1\) (\(25\%\) số điểm) : \(n \leq 20\).
  • Subtask \(2\) (\(25\%\) số điểm) : \(n \leq 5000\).
  • Subtask \(3\) (\(50\%\) số điểm) : không có ràng buộc gì thêm.

Example

Test 1

Input
3 1
1 3 
1 2 
3 3 
Output
1
1

Bình luận

Không có bình luận nào.