Hiệu nhỏ nhất (THT-B-2022-Hà Tĩnh)

Xem dưới dạng PDF

Gửi bài giải

Điểm: 10
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Kiểu bài tập

Cho dãy số \(A\) gồm \(n\) số nguyên \(a_1, a_2,..., a_n\) mỗi số có giá trị tuyệt đối không quá \(10^9\). Hãy tìm hai chỉ số \(i\) và \(j\) khác nhau sao cho \(|a_i - a_j|\) là nhỏ nhất \((1 \le i, j \le n, i \ne j)\).

Dữ liệu vào:

  • Dòng đầu tiên ghi một số nguyên \(n (2 \le n \le 5 \times 10^6)\) là số phần tử trong dãy;
  • Dòng thứ hai ghi \(n\) số nguyên \(a_1, a_2,... a_n (|a_i| \le 10^9, 1 \le i \le n)\) cách nhau ít nhất một dấu cách.

Dữ liệu ra: là một số nguyên duy nhất là giá trị \(|a_i -a_j|\) nhỏ nhất tìm được.

Ràng buộc:

  • 50% số test ứng với 50% số điểm có \(n \le 2 \times 10^3\).
  • 50% số test còn lại ứng với 50% số điểm không có ràng buộc gì thêm.

Input

6
-4 3 -9 0 10 5

Output

2

Giải thích

Hai chỉ số cần tìm là 2 và 6, \(|a_2 - a_6| = 2\)

Input

3
1 1 1

Output

2
0

Giải thích

Hai chỉ số cần tìm là 1 và 3, \(|a_1 - a_3| = 0\)


Nhận xét

Không có ý kiến tại thời điểm này.