QHD10 - Dãy chung dài nhất của hai dãy số - COMSEQ
Dữ liệu vào: Standard input
Dữ liệu ra: Standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: phanhieubl

Cho hai số nguyên dương M, N (0<M,N≤1000) và hai dãy số nguyên: a1, a2, ..., am (A) và b1, b2,    , bn

  1. Tìm một dãy dài nhất C nhận được từ A bằng cách xoá đi một số số hạng và cũng nhận được từ B bằng cách xoá đi một số số hạng (nói chung không cùng chỉ số như đối với dãy A). Ta gọi C là dãy con chung dài nhất của hai dãy A, B.

Input: Cho trong file COMSEQ.INP:

  • Dòng đầu tiên chứa hai số M, N
  • Dòng thứ hai chứa M số a1, a2,.... , am
  • Dòng thứ ba chứa N số b1, b2,... , bn.

Output: Ghi ra file COMSEQ.OUT

  • Dòng thứ nhất ghi K là số lượng số hạng của dãy C
  • Dòng thứ hai ghi K số là các số hạng của dãy C
  • Dòng thứ ba ghi K số là chỉ số trong dãy A của K số hạng của C
  • Dòng thứ tư ghi K số là chỉ số trong dãy B của K số hạng của C

Ví dụ

COMSEQ.INP

COMSEQ.OUT

5 6

2 3 5 1 4

4 2 3 6 5 10

3

2 3 5

1 2 3

2 3 5

Back to Top