Mô tả
Dịp lễ lớn sắp tới, chuỗi bán lẻ muốn tìm ra những mặt hàng "hot" — tức là các sản phẩm có sẵn đồng thời ở cả ba siêu thị Co.opmart, GO! và Lotte Mart — để tung ưu đãi chung. Mỗi siêu thị đã xuất cho bạn một danh sách mã sản phẩm đang còn trong kho. Vì dữ liệu được trích xuất từ cùng hệ thống kho, mỗi danh sách đã được sắp xếp tăng dần và không chứa mã trùng lặp. Nhiệm vụ của bạn là đưa ra danh sách các mã sản phẩm chung cho cả ba siêu thị, sắp xếp tăng dần.
Đầu vào
Bài toán nhận ba mảng số nguyên a, b, c tương ứng với danh sách mã sản phẩm của Co.opmart, GO! và Lotte Mart. Mỗi mảng có độ dài n thỏa mãn 0 ≤ n ≤ 2000. Mỗi phần tử là một số nguyên trong khoảng [-10^9, 10^9].
Đầu ra
Trả về một mảng số nguyên chứa các mã xuất hiện ở cả ba mảng a, b, c, được sắp xếp theo thứ tự tăng dần. Nếu không có mã nào thỏa mãn, trả về mảng rỗng.
Ràng buộc
- Độ dài mỗi mảng:
0 ≤ n ≤ 2000. - Giá trị mã sản phẩm nằm trong khoảng
[-10^9, 10^9]. - Mỗi mảng đầu vào đã được sắp xếp tăng dần và không chứa phần tử trùng lặp.
- Độ phức tạp thời gian mục tiêu:
O(n1 + n2 + n3).
Ví dụ
Ví dụ 1:
- Đầu vào:
[100, 200, 300],[200, 300, 400],[150, 200, 300, 500] - Đầu ra:
[200, 300]
Giải thích từng bước:
- Mã 200 có ở cả Co.opmart, GO! và Lotte Mart.
- Mã 300 cũng có mặt ở cả ba siêu thị.
- Các mã còn lại đều thiếu ở ít nhất một siêu thị.
Ví dụ 2:
- Đầu vào:
[1, 5],[2, 6],[3, 7] - Đầu ra:
[]
Giải thích từng bước:
- Không có mã nào xuất hiện đồng thời trong cả ba danh sách, nên kết quả là mảng rỗng.