CREDECRE - CARTONES CREDECRECIENTES

no tags 

English Version

For a variant of the tombola, you want to make and print cards of the following type:

   T1            T2            T3
  1 2 3        1 2  4        1  2  5
  6 5 4        7 6  5        8  7  6
  7 8 9        8 9 10        9 10 11

In the matrix, should be placed on the numbers 1 .. N, which can occur at most once in each matrix.

For example, T1 is valid when N = 9. T2 is a valid example of a matrix when N = 10, and T3 is a valid example of a matrix when N = 11.

Valid matrices comply with the following conditions:

  • Elements in row 1 must be ordered increasingly.
  • Elements of row 2 must be ordered in descending order.
  • Elements in row 3 must be sorted in increasing.
  • The smaller element of row 2 must be greater than the largest of row 1.
  • The smaller of the elements in row 3 has to be larger than the largest of row 2.

Matrices are always 3×3, but the number N may vary. It is organizing a massive event and want to know the number of valid matrices for different values ​​of N. You must code a program that reads values ​​for N, and report the number of different matrices that can be make to the value of N.

Data entry ends when you detect N = 0, the values ​​of N are in the range 0 .. 24

Example

Input:
4
9
11
10
24
0

Output:
0
1
55
10
1307504

Versión en español:

   T1            T2            T3
  1 2 3        1 2  4        1  2  5
  6 5 4        7 6  5        8  7  6
  7 8 9        8 9 10        9 10 11

Para una variante de la tómbola, se quiere confeccionar e imprimir cartones del siguiente tipo:

En la matriz, se deben ubicar los números en 1..N, los cuales pueden aparecer una vez como máximo -en cada cartón-. Por ejemplo, T1, es un cartón válido cuando N=9.

T2 es un ejemplo de un cartón válido cuando N=10, y T3 es un ejemplo de un cartón válido cuando N=11.

Los tableros válidos cumplen con las siguientes condiciones:

  • Los elemenos de la fila 1 tienen que estar ordenados en forma creciente.
  • Los elementos de la fila 2 tienen que estar ordenados en forma decreciente.
  • Los elementos de la fila 3 tienen que estar ordenados en forma creciente.
  • El menor de los elementos de la fila 2 tiene que ser mayor que el mayor de la fila 1.
  • El menor de los elementos de la fila 3 tiene que ser mayor que el mayor de la fila 2.

Los cartones siempre son de 3×3, pero el número N puede variar. Se está organizando un evento multitudinario y se quiere conocer la cantidad de cartones válidos para diferentes valores de N. Ud. debe codificar un programa que lea valores para N, ingresados por teclado, e informe la cantidad de cartones válidos diferentes que se pueden confeccionar para dicho valor de N.

La entrada de datos termina cuando ingresa N=0, los valores de N están en el rango 0..24

Ejemplo

Entrada:
4
9
11
10
24
0

Salida:
0
1
55
10
1307504


Added by:Coach UTN FRSF
Date:2012-06-18
Time limit:0.100s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:My imagination