You have *n* distinct objects, *x* identical bags,
and *y* identical boxes.
In how many ways is it possible to distribute the objects
into the bags and the boxes
so that each bag has at least one object,
and each box has exactly one object?

**Input**

Input consists of several test cases,
each one consisting of *n*, *x* and *y*.
Assume 1 ≤ *n* ≤ 25,
0 ≤ *x* ≤ 25,
and 0 ≤ *y* ≤ 25.

**Output**

For every test case,
print the number of ways to distribute *n* distinct objects
into *x* identical bags and *y* identical boxes
so that each bag has at least one object,
and each box has exactly one object.
You can assume that the answer is never larger than 5 · 10^{18}.

Public test cases

**Input**

4 0 4 4 1 0 4 2 0 4 4 0 4 1 2 4 0 3 25 9 2

**Output**

1 1 7 1 6 0 3696020643539070000

Information

- Author
- Salvador Roura
- Language
- English
- Official solutions
- C++
- User solutions
- C++
- Event
- Vuitè Concurs de Programació de la UPC - Semifinal
- Date
- 2010-06-30