Cho \(N\) đoạn thẳng trên trục số, đoạn thứ \(i\) có hai đầu mút \(s_i \le t_i\). Nói đoạn \([u, v]\) lồng trong đoạn \([x, y]\) nếu \(x \le u\) và \(v \le y\) (đoạn trùng nhau cũng lồng trong nhau).
Hãy chọn nhiều đoạn nhất có thể (mỗi đoạn dùng nhiều nhất một lần) rồi xếp chúng thành dãy \(c_1, c_2, \dots, c_m\) sao cho mỗi đoạn lồng trong đoạn đứng ngay trước nó. In ra \(m\) lớn nhất.
Input
- Dòng đầu chứa số nguyên \(N\).
- \(N\) dòng tiếp theo, mỗi dòng gồm \(s_i\) và \(t_i\).
Output
Một số nguyên là số đoạn tối đa xếp được.
Constraints
- \(1 \le N \le 10^5\)
- \(1 \le s_i \le t_i \le 10^9\)
Sample Input
7
2 3
1 8
2 8
4 6
1 8
5 5
3 7
Sample Output
6
Explanation
Chuỗi \([1,8],[1,8],[2,8],[3,7],[4,6],[5,5]\) thoả mãn, gồm \(6\) đoạn. Chỉ còn lại đoạn \([2,3]\) không thể thêm vào chuỗi mà vẫn giữ tính lồng nhau.
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.