Code camp Đà Lạt vào dịp cuối năm có ~n~ team tham gia. Các team được đánh số hiệu từ ~1~ đến ~n~, team thứ ~i~ có ~a_i~ học sinh. Trong buổi sinh hoạt tập thể, BTC muốn tổ chức cho sinh viên chơi trò chơi theo nhóm, mỗi nhóm có đúng ~k~ học sinh và không nhóm nào có hai học sinh cùng team (có thể có học sinh không được xếp vào bất cứ nhóm nào). Ban đầu, chỉ có ~m~ team có số hiệu ~1,2,…,m~ (với ~m<n~) tham gia. Mỗi một lượt chơi sau đó, các team có số hiệu ~m+1,m+2,…,n~ lần lượt đăng kí tham gia thêm. Mỗi khi có đoàn mới đăng kí tham gia, ban tổ chức sẽ sắp xếp lại các nhóm sao cho có nhiều nhóm chơi nhất theo quy định cũ như trước: mỗi nhóm có đúng ~k~ học sinh và không nhóm nào có hai học sinh cùng team.</p>
Yêu cầu làm giúp BTC tính ra số nhóm nhiều nhất có thể xếp được mỗi khi có team mới đăng ký tham gia chơi.
Input
Dòng đầu tiên ghi số nguyên dương ~T~ với ~T≤100~ tương ứng với ~T~ bộ dữ liệu, mỗi bộ theo dạng sau:
Dòng thứ nhất gồm ba số nguyên dương ~n,k,m~ với ~k,m<n \le 10^5~;</p>
Dòng thứ hai chứa ~n~ số nguyên dương ~a_i~ với ~1≤a_i≤10^9,i= 1,2,…,n~
Output
In ra ~T~ dòng, mỗi dòng gồm ~n-m~ số nguyên, trong đó số thứ ~j~ là số nhóm tối đa xếp được khi team ~m+j~ đăng kí tham gia (trong đó ~j = 1,2,… n-m~).
Sample input
1
5 3 3
3 5 3 2 4
Sample output
4 5
Subtasks:
- Có ~30\%~ test với ~T = 1; k,m<n≤10^3;~</li>
- Có ~30\%~ test với ~T≤10; k,m<n≤10^3~</li>
- Có ~40\%~ test với ~T≤100; k,m<n≤10^5~.</li>
Comments