Matriu X X58787


Statement
 

pdf   zip   main.cc

html

Feu una funció en C++  anomenada matriuX que donada una matriu d’enters no buida, retorna un duplicat d’aquesta matriu on per cada element de la matriu igual a 0 tots els elements de la seva fila i la seva columna es canvien a 0. A més també cal retornar el nombre de caselles diferents que s’han canviat a 0.

Aquesta funció ha de retornar un element del tipus Resultat:

struct Resultat { vector< vector<int> > matriu; int canviat; };

Interfície

Resultat matriuX(const vector< vector<int> > &mat);

Entrada

Una matriu no buida d’enters.

Sortida

Torna dues coses: un duplicat de la matriu d’entrada on per cada element de la matriu igual a 0 tots els elements de la seva fila i la seva columna es canvien a 0, i el nombre de caselles diferents que s’han canviat a 0.

Observació

Només cal enviar el procediment demanat; el programa principal serà ignorat.

Public test cases
  • Input

    5 4
    0 1 2 3
    4 5 6 7
    8 9 1 2
    3 4 5 6
    7 8 9 0
    

    Output

    0 0 0 0
    0 5 6 0
    0 9 1 0
    0 4 5 0
    0 0 0 0
    Elements canviats: 12
    
  • Input

    4 6
    1 2 3 4 5 6
    11 12 13 14 15 16
    21 22 23 24 25 26
    31 32 33 34 35 36
    

    Output

    1 2 3 4 5 6
    11 12 13 14 15 16
    21 22 23 24 25 26
    31 32 33 34 35 36
    Elements canviats: 0
    
  • Input

    6 6
    10 11 12 13 14 15
    20 0 21 22 23 24
    30 31 0 32 33 34
    40 41 42 0 43 44
    50 51 42 53 0 54
    60 61 62 63 64 65
    

    Output

    10 0 0 0 0 15
    0 0 0 0 0 0
    0 0 0 0 0 0
    0 0 0 0 0 0
    0 0 0 0 0 0
    60 0 0 0 0 65
    Elements canviats: 28
    
  • Information
    Author
    Bernardino Casas
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++