DHBB 2023 - CNTT - 10 - Xếp nhóm

Xem dạng PDF

Gửi bài giải

Điểm: 70,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

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Trại hè Tin học miền Bắc có ~n~ đoàn tham gia. Các đoàn được đánh số từ ~1~ đến ~n~, đoàn thứ ~i~ có ~a_i~ học sinh.

Ban tổ chức muốn chia học sinh thành các nhóm thỏa mãn:

  • Mỗi nhóm có đúng ~k~ học sinh;

  • Không có hai học sinh trong cùng một nhóm thuộc cùng một đoàn;

  • Một số học sinh có thể không được xếp vào nhóm nào.

Ban đầu, chỉ có ~m~ đoàn mang số hiệu ~1,2,\ldots,m~ tham gia, với ~m<n~. Sau đó, các đoàn ~m+1,m+2,\ldots,n~ lần lượt đăng ký. Mỗi khi một đoàn mới đăng ký, ban tổ chức sắp xếp lại toàn bộ học sinh của các đoàn đã đăng ký để tạo được nhiều nhóm nhất.</p>

Yêu cầu: Hãy tính số nhóm lớn nhất có thể tạo được sau mỗi lần một đoàn mới đăng ký.

Input

Dòng đầu tiên chứa số nguyên dương ~T~ ~(T \le 100)~, là số bộ dữ liệu.

Mỗi bộ dữ liệu có dạng:

  • Dòng đầu tiên gồm ba số nguyên dương ~n,k,m~ ~(k,m<n \le 10^5)~;</p>

  • Dòng thứ hai chứa ~n~ số nguyên dương ~a_1,a_2,\ldots,a_n~ ~(1 \le a_i \le 10^9)~.

Output

Với mỗi bộ dữ liệu, in ra một dòng gồm ~n-m~ số nguyên. Số thứ ~j~ là số nhóm lớn nhất có thể tạo được sau khi đoàn ~m+j~ đăng ký tham gia, với ~1 \le j \le n-m~.

Scoring

Subtask Điểm Ràng buộc
1 ~30\%~ ~T=1;\ k,m<n \le 10^3~</td>
2 ~30\%~ ~T \le 10;\ k,m<n \le 10^3~</td>
3 ~40\%~ ~T \le 100;\ k,m<n \le 10^5~</td>

Sample Input 1

1
5 3 3
3 5 3 2 4

Sample Output 1

4 5

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.