#170. Dãy con tăng dài nhất 2 (LIS2)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Cho một dãy gồm N số nguyên a_1, a_2, \ldots, a_N . Một dãy con là một dãy thu được bằng cách xóa đi một số phần tử (có thể không xóa phần tử nào) khỏi dãy ban đầu. Một dãy con được gọi là tăng nếu các phần tử của nó tăng dần nghiêm ngặt.

Yêu cầu: Hãy tìm độ dài của dãy con tăng dài nhất.

Dữ liệu:

  • Dòng đầu tiên chứa số nguyên N .
  • Dòng thứ hai chứa N số nguyên a_1, a_2, \ldots, a_N .

Kết quả: Một số nguyên duy nhất là độ dài của dãy con tăng dài nhất.

Ví dụ:

Dữ liệu:

8
5 2 8 3 4 10 9 12

Kết quả:

5

Giải thích: Một dãy con tăng dài nhất là 2, 3, 4, 9, 12 (hoặc 2, 3, 4, 10, 12 ), có độ dài là 5.

Giới hạn:

  • 1 \le N \le 10^5
  • |a_i| \le 10^9