Informatică, întrebare adresată de panthalassa, 9 ani în urmă

Cerinţa
Se dă o matrice cu n linii şi m coloane şi elemente numere naturale. Să se determine elementul cu număr maxim de apariții în matrice. Dacă există mai multe elemente cu număr maxim de apariții se vor afișa toate, în ordine crescătoare.

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

Date de ieşire
Programul afișează pe ecran elementele cu număr maxim de apariții se vor afișa toate, în ordine crescătoare, separate printr-un spațiu.

Restricţii şi precizări
1 ≤ m,n ≤ 100
elementele matricei vor fi mai mici decât 1.000.000
Exemplu
Date de intrare

4 6
4 20 15 23 18 9
1 8 23 23 14 18
17 15 13 18 12 15
3 18 8 23 12 5
Date de ieșire

18 23




Rezolvare:
#include

using namespace std;

int main()
{ int a[101][101],n,m,i,j,aux,maxim=0,v[1000000],b[101],cnt=0,x;
cin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
cin>>a[i][j];
for(i=1;i<=n;i++)
{for(j=1;j<=m;j++)
cin>>x;
v[a[i][j]]++;
}
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{if(v[a[i][j]]>maxim)
{maxim=v[a[i][j]];
b[1]=maxim;
cnt=1;
}
if(v[a[i][j]]==maxim)
{cnt++;
b[cnt]=maxim;
}
}

for(i=1;i for(j=i+1;j<=cnt;j++)
if(b[i]>b[j])
{
aux=b[i];
b[i]=b[j];
b[j]=aux;
}
for(i=1;i<=cnt;i++)
cout< return 0;
}


Imi da zero puncte pe pbinfo si nu stiu ce e gresit va rog ajutati-ma!(problema se numeste MaxAp-772)

Răspunsuri la întrebare

Răspuns de YeppX
0
Daca te uiti de jos in sus al doilea for, e o greseala acolo, e incomplet.
for(i = 1; i ... si nu ai mai continuat.
Un sfat, scrii cod foarte urat, foloseste taburi.

panthalassa: nu stiu cum sa aloc inca memorie dinamica nu am invatat\
YeppX: cauta pe google ce face functia malloc
panthalassa: nu stiu nu merge ..am pus #include <stdlib.h>

void *malloc(size_t size); asta inainte de int dar nu merge
YeppX: Nu acolo trebuie, cand iti declari matricea si vectorul ala mare. Acolo trebuie sa aloci memorie dinamic.
panthalassa: off..nu merge
panthalassa: degeaba icnerc
panthalassa: incerc*
panthalassa: { int *a = malloc(n * sizeof(int)) a[101][101],v[1000000],b[101],n,m,i,j,aux,maxim=0,cnt=0,x;
panthalassa: asa am scris
panthalassa: deci cum fac?
Alte întrebări interesante