Răspuns :
N-ai ce face, daca se spune in conditie ca deodata ce intri o coloana nu mai poti iesi.
Daca pe o coloana este 0, atunci nu mai are sens sa mearga pe aceasta. Daca pe o coloana este 1, atunci doar un om ar putea merge, pentru ca dupa ce va merge, aceasta va fi transformata in 0.
Deci la caz general, pe o coloana trebuie gasit n_min, astfel ca pe acea coloana vor putea merge n_min persoane.
#include <iostream>
using namespace std;
int n,m,a[1001][1001],nr;
int main()
{
cin >> n >> m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin >> a[i][j];
for(int i=1;i<=m;i++)
{
int min=10001;
for(int j=1;j<=n;j++)
if(a[j][i]<min)
min=a[j][i];
nr+=min;
}
cout << nr;
return 0;
}
Complexitatea este O(n*m) si intra in intervalul de 1.5 secunde, ne mai spunand de limita de memorie.
Daca pe o coloana este 0, atunci nu mai are sens sa mearga pe aceasta. Daca pe o coloana este 1, atunci doar un om ar putea merge, pentru ca dupa ce va merge, aceasta va fi transformata in 0.
Deci la caz general, pe o coloana trebuie gasit n_min, astfel ca pe acea coloana vor putea merge n_min persoane.
#include <iostream>
using namespace std;
int n,m,a[1001][1001],nr;
int main()
{
cin >> n >> m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin >> a[i][j];
for(int i=1;i<=m;i++)
{
int min=10001;
for(int j=1;j<=n;j++)
if(a[j][i]<min)
min=a[j][i];
nr+=min;
}
cout << nr;
return 0;
}
Complexitatea este O(n*m) si intra in intervalul de 1.5 secunde, ne mai spunand de limita de memorie.
Vă mulțumim că ați vizitat platforma noastră dedicată Informatică. Ne bucurăm dacă informațiile v-au fost de ajutor. Dacă aveți întrebări suplimentare sau aveți nevoie de asistență, nu ezitați să ne contactați. Revenirea dumneavoastră ne-ar onora, așa că nu uitați să ne adăugați la favorite!