[PreVOI 19] Bài 5: Xây dựng dãy số
Xem dạng PDF
Gửi bài giải
Điểm:
100,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, PyPy, Python, Scratch
Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Cho hai dãy số nguyên dương ~a_1, a_2, \dots, a_m~ và ~b_1, b_2, \dots, b_n~. Các bạn cần xây dựng dãy ~c~ gồm ~k~ phần tử ~c_1, c_2, \dots, c_k~ thỏa các yêu cầu sau:
- Tồn tại một dãy con của dãy ~c~ là dãy con của dãy ~a~.
- Các phần tử còn lại của dãy ~c~ là một dãy con của dãy ~b~ đồng thời là dãy con của dãy ~b~.
- Dãy ~c~ có thứ tự từ điển nhỏ nhất.
Chú ý: Dãy rỗng được là dãy con của mọi dãy nên nếu dãy ~c~ là dãy con của chỉ một trong hai dãy đã cho cũng được coi là thỏa mãn hai điều kiện đầu tiên.
Yêu cầu: Xây dựng dãy ~c~ có độ dài ~k~ thỏa mãn các điều kiện trên với thứ tự từ điển nhỏ nhất.
Input
- Dòng đầu chứa ba số nguyên ~m, n, k~ (~1 \le m, n \le 3000~; ~k \le m + n~).
- Dòng thứ hai chứa ~m~ số ~a_1, a_2, \dots, a_m~.
- Dòng thứ ba chứa ~n~ số ~b_1, b_2, \dots, b_n~.
Output
- Ghi ra một dòng duy nhất chứa ~k~ số của dãy ~c~ tìm được.
Bình luận