Олимпиадный тренинг

Задача . A. Берляндский покер


В берляндский покер играют с колодой из \(n\) карт, \(m\) из которых являются джокерами. В игре участвует \(k\) игроков (\(n\) делится на \(k\)).

В начале игры каждый игрок берет \(\frac{n}{k}\) карт из колоды (таким образом, каждая карта берется ровно одним игроком). Игрок, у которого максимальное количество джокеров в руке, является победителем, и он получает количество очков, равное \(x - y\), где \(x\) — количество джокеров в руке победителя, а \(y\) — максимальное количество джокеров среди всех других игроков. Если есть два или более игроков с максимальным количеством джокеров, все они являются победителями, и они получают \(0\) очков.

Вот несколько примеров:

  • \(n = 8\), \(m = 3\), \(k = 2\). Если один игрок получает \(3\) джокера и \(1\) простую карту, а другой игрок получает \(0\) джокеров и \(4\) простые карты, то первый игрок является победителем и получает \(3 - 0 = 3\) очка;
  • \(n = 4\), \(m = 2\), \(k = 4\). Два игрока получают простые карты, а два других игрока получают джокеры, так что оба они являются победителями и получают \(0\) очков;
  • \(n = 9\), \(m = 6\), \(k = 3\). Если первый игрок получает \(3\) джокера, второй игрок получает \(1\) джокера и \(2\) простые карты, а третий игрок получает \(2\) джокера и \(1\) простую карту, то первый игрок является победителем, и он получает \(3 - 2 = 1\) очко;
  • \(n = 42\), \(m = 0\), \(k = 7\). Поскольку джокеров нет, каждый получает \(0\) джокеров, каждый является победителем, и каждый получает \(0\) очков.

Для заданных \(n\), \(m\) и \(k\) вычислите максимальное количество очков, которое игрок может получить за победу в игре.

Входные данные

Первая строка входных данных содержит одно целое число \(t\) (\(1 \le t \le 500\)) — количество наборов входных данных.

Каждый набор входных данных содержит три целых числа \(n\), \(m\) и \(k\) (\(2 \le n \le 50\), \(0 \le m \le n\), \(2 \le k \le n\), \(k\) делит \(n\)).

Выходные данные

Для каждого набора входных данных выведите одно целое число — максимальное количество очков, которое игрок может получить за победу в игре.

Примечание

Тесты из примера разобраны в условии.


Примеры
Входные данныеВыходные данные
1 4
8 3 2
4 2 4
9 6 3
42 0 7
3
0
1
0

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя