Notice
Chào mừng bạn đến với OREOJ !

[TS10 Quảng Ninh 2025 - 2026] Dãy con tăng

Xem dạng PDF

Thông tin
Nguồn bài: TS10 Quảng Ninh 2025 - 2026
Chi tiết
Dạng bài
Ngôn ngữ cho phép
C, C++, C++20, C++23, Java, Kotlin, Pascal, PyPy, Python, Scratch
Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Cho hai dãy chỉ chứa ~0~ và ~1~. Cần tìm độ dài lớn nhất của một dãy con chung của hai dãy sao cho dãy con đó không giảm.

Input

Dòng đầu chứa ~n~ ~(1 \le n \le 2\cdot 10^5)~.

Dòng thứ hai chứa ~n~ số ~a_i~ ~(0 \le a_i \le 1)~.

Dòng thứ ba chứa ~m~ ~(1 \le m \le 2\cdot 10^5)~.

Dòng thứ tư chứa ~m~ số ~b_i~ ~(0 \le b_i \le 1)~.

Output

In ra độ dài lớn nhất của dãy con chung không giảm.

Subtask

  • Subtask 1: ~a_i=1~, ~m,n \le 3000~.
  • Subtask 2: ~m=n~, ~a_i=b_i~.
  • Subtask 3: ~m,n \le 3000~.
  • Subtask 4: Không có ràng buộc bổ sung.

Ví dụ 1

7
0 0 0 1 0 1 1
6
0 0 1 1 0 1
5

Ví dụ 2

3
1 1 1
5
1 0 1 0 0
2

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.