Suma Marco de una Matriz T54397


Statement
 

pdf   zip   main.cc

thehtml

Sea M una matriz cuadrada N × N. Esta matriz tiene marcos diferentes. El marco 0 está formado por las filas 0 y N−1 y las columnas 0 y N−1. El marco 1 está formado por las filas 1 y N−2 y las columnas 1 y N−2, excluyendo las partes que forman parte del marco 0, etc.

En el siguiente ejemplo, tiene que el marco 0 lo forman todas las posiciones en el que hay un 0, el marco 1 las posiciones en las que hay un 1, y el marco 2 las posiciones en las que hay un 2:

                          0  0  0  0  0
                          0  1  1  1  0
                          0  1  2  1  0
                          0  1  1  1  0
                          0  0  0  0  0

Es necesario implementar la función int sumaMarc(const Matriu& m, int x); con la siguiente especificación:

PRE: m una matriz N × N y 0 ≤ x < N/2 + (N ‍mod ‍2).

POST: Vuelve la suma de los elementos del marco x de M.

Observación

Sólo tiene que enviar la función que le pedimos y las funciones que ustedes defina. El resto no se tendrá en cuenta.

Entrada

Una matriz N × N y 0 ≤ x < N/2 + (N ‍mod ‍2).

Salida

La suma de los elementos del marco x de M.

Sample session
ENTRADA 1:
5
1  1  1  1  1
1  2  2  2  1
1  2  3  2  1
1  2  2  2  1
1  1  1  1  1

0
1
2

SORTIDA 1:
El marc 0 suma 16
El marc 1 suma 16
El marc 2 suma 3


ENTRADA 2:
4
1  2  3  1
2  1  3  2
2  3  5  3
1  2  2  1

0
1

SORTIDA 2:
El marc 0 suma 22
El marc 1 suma 12


ENTRADA 3:
6
1  1  1  1  0  7
1  0  2  2  2  1
4  2  3  5  2  2
1  2  0  3  0  1
1  1  2  2  2  1
1  1  1  1  1  0

0
1
2

SORTIDA 3:
El marc 0 suma 28
El marc 1 suma 19
El marc 2 suma 11
Information
Author
PRO1
Language
Spanish
Translator
Original language
Catalan
Other languages
Catalan English
Official solutions
C++
User solutions
C++