Rezolvare completă PbInfo #316 MinCols2

Cerinţa

Se dă o matrice cu m linii şi n coloane şi elemente numere naturale. Înlocuiţi cu valoarea minimă din matrice toate elementele de pe coloanele care conţin valoarea minimă.

Date de intrare

Programul citește de la tastatură numerele m şi n, iar apoi m*n numere naturale, separate prin spaţii, reprezentând elementele matricei, linie cu linie.

Date de ieşire

Programul afișează pe ecran matricea modificată, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.

Restricţii şi precizări

  • 1 ≤ m,n ≤ 20
  • elementele matricei vor fi mai mici decât 10000

Exemplu

Date de intrare

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

Date de ieșire

8 1 3 1 
2 1 6 1 
8 1 3 1 
9 1 7 1 

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema MinCols2:

#include <iostream>
#include <cassert>
using namespace std;

int m, n, a[25][25];

int main(){
    cin >> m >> n;
    for(int i=1;i<=m;++i)
        for(int j=1;j<=n;++j)
            cin >> a[i][j];

    int Min = a[1][1];
    for(int i=1;i<=m;++i)
        for(int j=1;j<=n;++j)
            if(a[i][j]<Min)
                Min = a[i][j];
    for(int j=1;j<=n; ++j){
        int ok = 0;
        for(int i=1;i<=m;++i)
            if(a[i][j] == Min)
                ok = 1;
        if(ok)
            for(int i=1;i<=m;++i)
                a[i][j] = Min;
    }
    for(int i=1;i<=m;++i){
        for(int j=1;j<=n;++j)
            cout << a[i][j] << " ";
        cout << endl;
    }
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #316 MinCols2

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #316 MinCols2 de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!