Pagini recente » Cod sursa (job #3038051) | Cod sursa (job #19302) | Cod sursa (job #707936) | Cod sursa (job #1999705) | Cod sursa (job #1336499)
#include <iostream>
#include <cstdio>
#include <cstdlib>
using namespace std;
int i=0,V[100000],Dif[100000],j,n,sum,sum_max,sum_par;
float suma=0;
int compare(const void*a, const void*b)
{
return(*(int*)a-*(int*)b);
}
int main()
{
freopen("avioane.in","r",stdin);
freopen("avioane.out","w",stdout);
scanf("%d",&n);
for (i=0;i<n;i++)
{
scanf("%d",&V[i]);
}
qsort(V,n,sizeof(int),compare);
for (i=0;i<n-1;i++)
{
Dif[i]=V[i+1]-V[i];
suma+=Dif[i];
}
suma/=n;
for (i=n-1;i>0;i--)
if (Dif[i]>=suma)
{
sum_par=(n-i-1)*V[i+1];
for (j=i-1;j>=0;j--)
{
if (Dif[j]>=suma)
if (sum<sum_par+(i-j-1)*V[j+1]) {sum=sum_par+(i-j)*V[j+1]; }
}
if (sum>sum_max) sum_max=sum;
}
cout<<sum_max;
}