ĐOẠN NẰM TRONG

Xem dưới dạng PDF

Gửi bài giải

Điểm: 15
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Kiểu bài tập

Hạo có một tập hợp \(N\) đoạn thẳng được vẽ trên trục số. Đoạn thứ \(i\) vẽ bắt đầu từ vị trí \(s_i\) vị trí \(t_i\). Đầu tiên Hạo lấy ra một đoạn bất kỳ trong số \(N\) đoạn này, tiếp theo anh ấy sẽ lấy một đoạn khác sao cho đoạn này nằm trong đoạn vừa lấy trước đó ... công việc này tiếp tục cho đến khi không thể lấy thêm. Hạo đang thắc mắc nếu mình lấy tối ưu nhất thì được tối đa bao nhiêu đoạn

Yêu cầu: Bạn cần viết chương trình nhận đầu vào là thông tin của \(N\) đoạn thẳng trên, xác định số lượng tối đa các đoạn được Hạo lấy ra là bao nhiêu. Biết rằng đoạn \([u,v]\) được coi là nằm trong đoạn \([x,y]\) nếu \(x \le u \le v \le y\)

Dữ liệu vào

  • Dòng đầu tiên chứa một số nguyên \(N\) cho biết số lượng các đoạn thẳng trong tập hợp mà Hạo đã vẽ \((1 \le N \le 10^3)\)
  • Mỗi \(N\) dòng tiếp theo có hai số nguyên \(s_i\) và \(t_i\) tương ứng với vị trí bắt đầu và kết thúc của đoạn thứ \(i\) \((1 \le s_i \le t_i \le 10^9)\)

Dữ liệu ra

  • In ra một số nguyên duy nhất là số đoạn thẳng tối đa được Hạo lấy ra.

Input 1

4
1 6
1 2
2 6
3 4

Output 1

3

Nhận xét

Không có ý kiến tại thời điểm này.