Chia nhóm
Xem dạng PDF
Mã bài:
chianhom
Điểm:
1 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
512M
Dữ liệu vào:
stdin
Dữ liệu ra:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python, Scratch
Cho n số nguyên a1, a2, …, an. 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: Vào từ tệp văn bản CAU2.INP:
- Dòng đầu chứa hai số nguyên dương n và h, n ≤ 103, h ≤ 10$^9$ ;
- Trong n dòng tiếp theo, dòng thứ i (1 ≤ i ≤ n) chứa số nguyên ai có giá trị tuyệt đối không vượt quá 10$^9$.
Kết quả : Ghi ra tệp văn bản CAU2.OUT số lượng nhóm ít nhất tìm được
Ví dụ
| input | output | giaithich |
|---|---|---|
| 6 3 -7 27 -5 26 28 -6 |
2 | 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. 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. |
Bình luận