Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
LNACSSEQ - Dãy con chung không liền kề dài nhất (VOI 2010) |
Dãy C = c1, c2, ..., ck là dãy con không liền kề của dãy A = a1, a2, ..., am nếu C có thể nhận được bằng cách chọn một dãy các phần tử không liền kề của A, nghĩa là tìm dược dãy các chỉ số i1, i2, ..., ik sao cho:
1 ≤ i1, i2, ..., ik ≤ m;
i1< i2 - 1, i2< i3 - 1, ..., ik - 1< ik - 1;
c1 = ai1, c2 = ai2, ck = aik.
A = a1, a2, ..., am
và
B = b1, b2, ..., bn
Yêu cầu: Cho hai dãy số A và B. Hãy tìm độ dài của dãy con chung không liền kề dài nhất của hai dãy đã cho.
Input:
- Dòng đầu tiên chứa hai số nguyên dương m và n (2 ≤ m, n ≤ 103) được ghi cách nhau bởi dấu cách, lần lượt là số lượng phần tử của dãy A và dãy B.
- Dòng thứ i trong m dòng tiếp theo chứa số nguyên không âm ai (ai ≤ 104), i = 1, 2, ..., m.
- Dòng thứ j trong n dòng tiếp theo chứa số nguyên không âm bj (bj ≤ 104), j = 1, 2, ..., n.
Output:
Ta gọi độ dài của dãy số là số phần tử của nó.
Cho hai dãy:
Dãy C được gọi là dãy con chung không liền kề của hai dãy A và B nếu như nó vừa là dãy con không liền kề của A, vừa là dãy con không liền kề của B.
Ghi ra trên một dòng duy nhất độ dài của dãy con chung không liền kề dài nhất của hai dãy A và B.
Example:
Input:
4 5
4
9
2
4
1
9
7
3 4
Output:
2
Được gửi lên bởi: | noname00.pas |
Ngày: | 2017-11-21 |
Thời gian chạy: | 0.100s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | C-CLANG C CSHARP C++ 4.3.2 CPP CPP14 CPP14-CLANG C99 JAVA PAS-FPC PYTHON PYTHON3 |
Nguồn bài: | Bài tập thực hành CSL (Lào Cai chia sẻ) |