La ceba amagada. X49378


Statement
 

pdf   zip

html

Tota matriu d’enters M de mida n×m, amb 0<n,m<100 conté una ceba en una posició donada (i,j) (amb 0≤i<n,0≤j<m). L’element M[i][j] és el cor de la ceba (o la capa 0), tots els elements de la matriu que envolten el cor formen la primera capa de la ceba. Igualment, els elements que envolten la capa 1, formen la segona capa de la ceba, i així succesivament fins arribar a l’última capa. Totes les capes de la ceba són senceres, és a dir, totes les capes, excepte l’última, estan totalment envoltades.

Per exemple, per a una matriu de 8 files i 9 columnes, si el cor de la ceba es troba a la posició (4,5), el diagrama següent mostra a quina capa es troben els elements de la matriu que formen part de la ceba (els marcats amb f estan fora de la ceba):

f f f f f f f f f
f f 3 3 3 3 3 3 3
f f 3 2 2 2 2 2 3
f f 3 2 1 1 1 2 3
f f 3 2 1 0 1 2 3
f f 3 2 1 1 1 2 3
f f 3 2 2 2 2 2 3
f f 3 3 3 3 3 3 3

Feu un programa que, donada una matriu d’enters i la posició del cor de la ceba, calculi la suma dels valors de cadascuna de les seves capes. Per exemple, per a la matriu següent, amb el cor de la ceba a la posició (4,5):

15  1 92 92 82 15  1 92 92
46 31 13  3 32 46 32 13 13
15  3 32  2 22 16 12 34 14
23 17 33  1  2 23 17 32 21
13 63 56  2 21 13 62 66  4
43  9  8 52 11 43  9  8 64
53 96  6 42 17 63 99  6 14
99 94  5 51 21 99 94  5 51

el vostre programa ha de retornar que la suma de la capa 0 és 13, la suma de la capa 1 és 188, la suma de la capa 2 és 474, la suma de la capa 3 és 730.

Entrada

L’entrada ve donada per la mida de la matriu (dos enters n i m, amb 0<n,m<100), seguits dels n×m elements enters de la matriu, seguits de la posició del cor de la ceba (dos enters i i j, amb 0≤i<n i 0≤j<m).

Sortida

La sortida ha d’indicar per cada capa de la ceba el valor de la suma dels seus elements seguint el format dels exemples.

Public test cases
  • Input

    8 9
    15  1 92 92 82 15  1 92 92
    46 31 13  3 32 46 32 13 13
    15  3 32  2 22 16 12 34 14
    23 17 33  1  2 23 17 32 21
    13 63 56  2 21 13 62 66  4
    43  9  8 52 11 43  9  8 64
    53 96  6 42 17 63 99  6 14
    99 94  5 51 21 99 94  5 51
    4 5

    Output

    capa: 0, suma: 13
    capa: 1, suma: 188
    capa: 2, suma: 474
    capa: 3, suma: 730
    
  • Input

    10 10
    1 1 1 1 1 1 1 1 1 1
    1 2 2 2 2 2 2 2 2 1
    1 2 3 3 3 3 3 3 2 1
    1 2 3 4 4 4 4 3 2 1
    1 2 3 4 5 5 4 3 2 1
    1 2 3 4 5 5 4 3 2 1
    1 2 3 4 4 4 4 3 2 1
    1 2 3 3 3 3 3 3 2 1
    1 2 2 2 2 2 2 2 2 1
    1 1 1 1 1 1 1 1 1 1
    4  4

    Output

    capa: 0, suma: 5
    capa: 1, suma: 35
    capa: 2, suma: 55
    capa: 3, suma: 59
    capa: 4, suma: 47
    
  • Input

    5 5
     1  2  3  4  5
     6  7  8  9 10
    11 12 13 14 15
    16 17 28 29 20
    21 22 23 24 25
    2 2

    Output

    capa: 0, suma: 13
    capa: 1, suma: 124
    capa: 2, suma: 208
    
  • Input

    5 4
     1  2  3  4
     5  6  7  8
     9  1 11 12
    13 14 15 16
    17 28 29 20
    4 2

    Output

    capa: 0, suma: 29
    
  • Input

    5 4
     1  2  3  4
     5  6  7  8
     9  1 11 12
    13 14 15 16
    17 28 29 20
    3 2

    Output

    capa: 0, suma: 15
    capa: 1, suma: 131
    
  • Information
    Author
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++