srednia==elem[]??

0

Witam probuje zrobic takie zadanko, ma zostac wypisany element tablicy ktory jest najblizszy sredniej arytmetycznej kilku liczb tutaj taki kod:
nie wiem czy dobrze kombinuje???
cin>>t;
while(t--)
{

     cin>>n;
     if(n<100)    
     tab=new unsigned int[n];
     for(int i=0;i<n;i++)  
     {
     cin>>tab[i]; 
     w+=tab[i]/2;
     if(w==tab[i]) cout<<tab[i];
     }
    
     
    
       
         
}
0

SPOJ?

Źle. Porównujesz liczbę do połowy sumy elementów już wczytanych (a nie średniej wszystkich). Poza tym ma być najbliższa, nie dokładnie taka sama.
Przemyśl sobie najpierw co chcesz zrobić, dopiero potem zabieraj się za pisanie tego w kodzie.

Prosty algorytm:

  1. Liczysz średnią.
  2. Szukasz liczby, która ma najmniejszą różnicę (wart. absolutna) od średniej.

1 użytkowników online, w tym zalogowanych: 0, gości: 1