Phần tử lặp đầu tiên
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 mảng A gồm N số nguyên. Tìm giá trị xuất hiện lần thứ hai đầu tiên khi duyệt mảng từ trái sang phải.
Nói cách khác, hãy tìm phần tử đầu tiên trong mảng mà nó đã từng xuất hiện trước đó.
Sử dụng hash set: vừa duyệt vừa kiểm tra xem phần tử hiện tại đã có trong set chưa.
Đầu vào
- Dòng đầu tiên chứa số nguyên N (\(1 \le N \le 10^5\)).
- Dòng thứ hai chứa N số nguyên \(A_i\) (\(-10^9 \le A_i \le 10^9\)).
Đầu ra
In ra giá trị của phần tử lặp đầu tiên. Nếu không có phần tử nào lặp, in ra -1.
Ví dụ
Input:
7
3 5 1 4 3 5 2
Output:
3
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