Трикутник Шибеника#3552

Трикутник Шибеника

1 секунда
64 мегабайти
Середня

Визначення трикутника Шибеника нагадує трикутник Паскаля. Рядки нумеруються зверху, починаючи з . Кожен рядок містить n+1 чисел, індексованих від до . Позначимо елемент з індексом у рядку з індексом як R(n,m):

R(n,m) = 0 \text{ для } n < 0 \text{ АБО } m < 0 \text{ АБО } m > n

Перші та останні числа в кожному рядку (які однакові у верхньому рядку) дорівнюють :

R(n,0) = R(n,n) = 1

Внутрішні значення визначаються за формулою (UpLeftEntry \cdot UpRightEntry+1)/UpEntry (див. паралелограм у масиві нижче):

R(n+1, m+1) = (R(n,m) \cdot R(n,m+1) + 1)/R(n-1,m)

Напишіть програму, яка обчислює елемент R(n,m) у рядку трикутника Шибеника.

Вхідні дані

Перший рядок вхідних даних містить одне ціле число (1 \le P \le 1000), яке вказує на кількість наборів даних, що слідують. Кожен набір даних представлений одним рядком вхідних даних, що складається з десяткових цілих чисел, розділених пробілами. Перше число — номер набору даних . Друге число — номер рядка , а третє число — індекс у рядку, для якого потрібно знайти R(n,m) — елемент трикутника Шибеника (0 \le m \le n \le 50000).

Вихідні дані

Для кожного набору даних виведіть один рядок вихідних даних. Він повинен містити номер набору даних , за яким слідує один пробіл, а потім елемент трикутника Шибеника R(n,m), округлений до цілого значення.

Приклади

Приклад 1

Loading
Loading