Chia nhóm
View as PDF
Submit solution
Points:
200.00 (partial)
Time limit:
1.0s
Memory limit:
1G
Input:
stdin
Output:
stdout
Author:
Problem type
Cho n số nguyên ~a_1, a_2, …, a_n~. Người ta muốn chia n số nguyên này thành các nhóm, trong mỗi nhóm hiệu của số lớn nhất và số nhỏ nhất không vượt quá số nguyên dương h cho trước.
Yêu cầu: Xác định số lượng nhóm ít nhất khi chia nhóm n số nguyên đã cho thỏa mãn điều kiện trên.
Dữ liệu:
- Dòng đầu chứa hai số nguyên dương n và ~h, n ≤ 10^3, h ≤ 10^9 ;~
- Trong n dòng tiếp theo, dòng thứ ~i (1 ≤ i ≤ n)~ chứa số nguyên ~a_i~ có giá trị tuyệt đối không vượt quá ~10^9~.
Kết quả : Ghi ra số lượng nhóm ít nhất tìm được.
Ví dụ :
INPUT
6 3
-7
27
-5
26
28
-6
OUTPUT
2
Giải thích: Có thể chia 6 số đã cho thành hai nhóm. Nhóm thứ nhất gồm các số thứ 1, thứ 3, thứ 6 và nhóm thứ hai là các số còn lại. Hai nhóm này đều có hiệu của số lớn nhất và số nhỏ nhất là 2 nhỏ hơn 3.
Comments