Максимум в цикле из 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.