Gửi bài giải
Điểm:
10,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, Output Only, Pascal, PyPy, Python, Scratch, TEXT
Cho một dãy ~N~ số nguyên ~a_0, a_1, ..., a_{N - 1}~. Khoảng cách giữa hai số ~a_i~ và ~a_j~ (~0 \le i, j \le N - 1~, ~i \neq j~) được định nghĩa là ~|i - j|~. Tìm khoảng cách ngắn nhất giữa hai số bằng nhau trong dãy. Nếu không có hai số bằng nhau, in ra ~-1~.
INPUT
Dòng đầu tiên chứa nguyên dương ~N~ (~2 \le N \le 10^5~).
Dòng thứ hai ghi ~N~ số nguyên ~a_0, a_1, ..., a_{N - 1}~ (~-10^9 \le a_i \le 10^9~).
OUTPUT
In ra một số nguyên duy nhất là kết quả của bài toán.
SUBTASKS
Subtask | Điểm | Ràng buộc |
---|---|---|
1 | ~80~ | ~N \le 10^3~, ~-10^5 \le a_i \le 10^5~. |
2 | ~20~ | Không có ràng buộc gì thêm. |
SAMPLE INPUT
5
7 2 3 2 7
SAMPLE OUTPUT
2
Dãy ~[7, 2, 3, 2, 7]~ có hai cặp số bằng nhau:
- ~7~ ở vị trí ~O~ và ~4~, khoảng cách ~4~
- ~2~ ở vị trí ~1~ và ~3~, khoảng cách ~2~ nên kết quả của bài toán là ~2~.
Bình luận