Giao của hai mảng
Xem dưới dạng PDF
Gửi bài giải
Điểm:
30
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
đầu vào:
stdin
Đầu ra:
stdout
Kiểu bài tập
Cho hai mảng A (gồm N phần tử) và B (gồm M phần tử). Hãy tìm giao của hai mảng — các giá trị xuất hiện trong cả hai mảng, mỗi giá trị chỉ in một lần theo thứ tự tăng dần.
Sử dụng hash set: đưa các phần tử của A vào set, duyệt B và kiểm tra phần tử nào có trong set.
Đầu vào
- Dòng đầu tiên chứa hai số nguyên N (\(1 \le N \le 10^5\)) và M (\(1 \le M \le 10^5\)).
- Dòng thứ hai chứa N số nguyên \(A_i\) (\(-10^9 \le A_i \le 10^9\)).
- Dòng thứ ba chứa M số nguyên \(B_j\) (\(-10^9 \le B_j \le 10^9\)).
Đầu ra
In ra các giá trị thuộc giao của hai mảng, mỗi giá trị cách nhau bởi khoảng trắng, theo thứ tự tăng dần. Nếu không có, in ra dòng trống.
Ví dụ
Input:
5 4
1 2 2 3 4
2 4 6 8
Output:
2 4
Ràng buộc & Subtasks
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | 40% | Giới hạn nhỏ |
| 2 | 60% | Không có ràng buộc gì thêm |
Nhận xét