РСОП XXVII 2015
12
C.
TEAMS
75
Условие
С. КОЛЕКТИВИ
---
Студентите от последния курс в бакалавърската програма Информатика на един университет са N. За да осигури на завършващите студенти работа над реален софтуерен проект, ръководството на Програмата помолило софтуерни фирми да предложат примерни проекти, всеки от които да може да бъде изпълнен за определено време от C студента. От предложените проекти ръководството избрало R така, че R.C ≤ N. Сега трябва да бъдат сформирани R колектива от по C студенти и това е главната грижа на ръководството. Нека за всеки студент, по време на обучението е определено цяло положително число Кi – капацитет на студента, представляващо комплексна оценка на качествата и подготовката му. Според експерти, най-важен за успеха на един проект е индексът на несъвместимост на колектива, измерващ се с разликата на най-високия и най-ниския капацитет в колектива (ако колективът се състои от един студент, тогава индексът е нула). Естествено е ръководството да се опита да сформира R-те колектива така, че максималният индекс на несъвместимост в получилите се колективи да е колкото може по-малък. Напишете програма, която по зададен брой на студентите и техните капацитети пресмята търсения минимум за R колектива от по C студенти.
Вход:
Програмата трябва да може да обработи няколко тестови примера при едно извикване. На първия ред на стандартния вход ще бъде зададен броят T на тестовите примери. За всеки тестов пример, първият ред ще съдържа естествени числа N, R и C, а всеки от следващите N реда по едно цяло положително число – капацитетът на един от студентите.
Изход:
За всеки тестов пример програмата трябва да изведе на отделен ред на стандартния изход едно цяло число – най-малката възможна стойност на максималния индекс на несъвместимост на образуваните колективи.
Ограничения:
1 ≤ N ≤ 100 000, 1 ≤ R, 1 ≤ C, R.C ≤ N, Ki ≤ 1 000 000 000.
Примерен вход:
1
8 2 3
170
205
225
190
260
130
225
160
Примерен изход:
30