RETO11C - Cuadrados diabolicos

no tags 

Cuadrados diabolicos y esotericos

 

Se considera un cuadrado mágico diabólico a la disposición de una serie de números enteros en un cuadrado de forma tal que la suma de los números por columna,    la y diagonales principales sea la misma.  A esta suma se le llama constante mágica (CM). Para nuestro desarrollo consideraremos el cuadrado como una matriz con igual número de  las que de columnas.

 

 

Si suponemos n la cantidad de las o columnas del cuadrado, un cuadrado mágico diabólico es esotérico cuando, además de ser diabólico, cumple las siguientes condiciones:

 

1.  Tiene las mismas cifras que el número de casillas. Es decir, siguen la serie de números naturales de 1 a n2.

 

2.  La suma de sus esquinas debe ser la constante mágica 2 (CM2 ) que cumple que:

CM2 = 4 CM/n

 

3.  Si n es impar:

 

La suma de las cifras de las cuatro casillas de la mitad de los laterales suma la constante mágica 2.

Si se multiplica el valor de la casilla central por 4, se obtiene la constante mágica 2.

22

47

16

41

10

35

4

5

23

48

17

42

11

29

 

 

 

 

 

 

 

30

6

24

49

18

36

12

 

 

 

 

 

 

 

13

31

7

25

43

19

37

38

14

32

1

26

44

20

 

 

 

 

 

 

 

21

39

8

33

2

27

45

 

 

 

 

 

 

 

46

15

40

9

34

3

28

 

 

 

 

 

 

 

 

n = 7

 

 

 

Constante mágica = 175

 

 

Constante mágica 2 = 100

 

 

 

 

Esquinas

22 + 4 + 46

+ 28 = 100

(CM2 )

Centro

4  25 = 100

(CM2 )

 

Centro lados

41 + 13 + 37 + 9 = 100

(CM2 )

4. Si n es par:

La suma de las dos casillas centrales de cada uno de los cuatro laterales suman el doble de la constante mágica 2 (2 CM2)

La suma de las cuatro casillas centrales da como resultado la constante mágica 2.

 

1

63

62

4

5

59

58

8

 

 

 

 

56

10

11

53

52

14

15

49

 

 

n = 8

 

 

 

 

 

 

 

 

 

 

 

 

48

18

19

45

44

22

23

41

 

 

 

 

 

Constante mágica = 260

 

 

 

 

 

 

 

 

 

 

 

 

25

39

38

28

29

35

34

32

 

 

 

 

 

Constante mágica 2 = 130

 

33

31

30

36

37

27

26

40

 

 

 

 

 

 

 

 

Esquinas

1 + 8 + 57 + 64 = 130 (CM2 )

 

24

42

43

21

20

46

47

17

 

 

 

Centro

28 + 29 + 36 + 37 = 130 (CM2 )

 

 

 

 

 

 

 

 

 

 

 

16

50

51

13

12

54

55

9

 

 

Centro lados

4 + 5 + 25+ 33 + 60 + 61 + 32 + 40

 

 

 

 

 

 

 

 

 

 

 

57

7

6

60

61

3

2

64

 

 

 

= 260 (2  CM2 )

 

 

 

 

 

 

 

 

 

 

 

 

Input

El programa leerá de la entrada estándar un cuadrado mágico tras otro. Cada cuadrado mágico consistirá en dos l neas. La primera l nea contendrá el valor de n (2 n 1024). La segunda l nea será los valores de las n2 celdas, uno detrás de otro.

 La entrada termina cuando al leer el tamaño del siguiente cuadrado mágico se recibe un 0.

Output

Para un cuadrado esotérico, el programa escribirá ESOTERICO, para un cuadrado mágico diabólico (no esotérico) escribirá DIABOLICO. Para cualquier otro cuadrado, mostrar NO.

Example

Input:
3
4 9 2 3 5 7 8 1 6
2
1 2 3 4
3 4 9 2 3 5 7 8 1 6 2 1 2 3 4 4 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1 3 28 21 26 23 25 27 24 29 22 3 2 8 1 6 3 5 7 4 9 0
4
16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1
3
28 21 26 23 25 27 24 29 22
3
2 8 1 6 3 5 7 4 9
0
Output:
ESOTERICO
NO
ESOTERICO
DIABOLICO
NO


Added by:MaratónAFDM
Date:2017-10-06
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:C CSHARP C++ 4.3.2 JAVA NODEJS PHP PYTHON VB.NET