Bună! Am nevoie de ajutor la problema #1444 Memory001 pentru 100 de puncte (in c++)
erința
Se dă o matrice cu m linii şi n coloane şi elemente numere naturale. Determinaţi coloana din matrice pentru care suma elementelor este minimă. Dacă sunt mai multe coloane cu suma minimă, se va afişa indicele minim al unei asemenea coloane.

Date de intrare
Fișierul de intrare memory001.in conține pe prima linie numerele m şi n reprezentând dimensiunile matricei, iar pe următoarele m linii câte n numere naturale separate prin spații reprezentând elementele matricei.

Date de ieșire
Fișierul de ieșire memory001.out va conține pe prima linie cel mai mic indice al unei coloane din matrice având suma elementelor minimă.

Restricții și precizări
2 ≤ m , n ≤ 1000
elementele matricei vor fi mai mici decât 2.000.000.000
numerotarea liniilor și a coloanelor matricei începe de la 1

Exemplu
memory001.in

2 3
1 2 3
7 10 5
memory001.out

1
Explicație
Suma elementelor pe cele trei coloane este 8 , 12, respectiv 8. Coloana cu indice minim având suma elementelor minimă este coloana 1.


Răspuns :

#include <fstream>

using namespace std;

ifstream f("memory001.in");

ofstream g("memory001.out");

unsigned m,n,i,j,jmin;

unsigned long long int a,v[1001],minim,s;

int main()

{

f>>m>>n;

for(i=1;i<=m;i++)

       for(j=1;j<=n;j++)

       {

           f>>a;

           v[j]+=a;

       }

minim=v[1];

jmin=1;

for(j=2;j<=n;j++)

       if(v[j]<minim)

       {

           minim=v[j];

           jmin=j;

       }

   g<<jmin;

   return 0;

}


#include <bits/stdc++.h>

using namespace std;

ifstream fin ("memory001.in");

ofstream fout("memory001.out");

long long t[1005];

int n,m;

int main()

{

   int x,i,j;

   long long smin;

   fin>>n>>m;

   for(i=1;i<=n;i++)

       for(j=1;j<=m;j++)

       {

           fin>>x;

           t[j]+=x;

       }

   smin=t[1];

   x=1;

   for(j=1;j<=m;j++)

       if(t[j]<smin)

       {

           smin=t[j];

           x=j;

       }

   fout<<x<<"\n";

   fout.close();

   return 0;

}

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!


RO Lesson: Alte intrebari