Максимум у циклі з 1
Якщо P є перестановкою цілих чисел від 1 до n, то максимум у циклі, що починається з 1, визначається як найбільше значення серед P(1), P(P(1)), P(P(P(1))) і так далі. Наприклад, якщо P є такою перестановкою:
|1 2 3 4 5 6 7 8| |3 2 5 4 1 7 8 6|
то отримаємо:
P(1) = 3, P(P(1)) = P(3) = 5
і
P(P(P(1))) = P(5) = 1
Таким чином, максимум у циклі, що починається з 1, дорівнює 5.
Ваше завдання — написати програму, яка отримує на вхід цілі числа n (n > 0) та k (1 ≤ k ≤ n), і повертає кількість перестановок чисел від 1 до n, для яких максимум у циклі, що починається з 1, дорівнює k.
Вхідні дані
Перша строка вхідних даних містить одне ціле число P (1 ≤ P ≤ 1000), яке вказує на кількість наборів даних, що слідують. Кожен набір даних представлений одним рядком, що містить три цілі числа, розділені пробілами. Перше число — це номер набору даних N. Друге число — розмір перестановки n (1 ≤ n ≤ 20), а третє число — бажаний максимум у циклі, що починається з 1, k (1 ≤ k ≤ n).
Вихідні дані
Для кожного набору даних виведіть один рядок, що містить номер набору даних N, за яким слідує пробіл, а потім значення з плаваючою комою подвійної точності, яке представляє кількість перестановок чисел від 1 до n, для яких максимум у циклі, що починається з 1, дорівнює k.