Pagini recente » Cod sursa (job #2895188) | Cod sursa (job #522001) | Cod sursa (job #3196967) | Cod sursa (job #2612286) | Cod sursa (job #821934)
Cod sursa(job #821934)
#include <cstdio>
#include <algorithm>
#define val (( n + 1) - i)
typedef unsigned long long ull;
using namespace std;
int a[1000005];
int main(){
int i , n;
int pozfin;
ull sum = 0 , max = 0 , max2 = 0;
freopen("avioane.in" , "r" , stdin);
freopen("avioane.out" , "w" , stdout);
scanf("%d", &n);
for( i = 1; i <= n ; ++ i )
scanf("%d", &a[i]);
sort( a + 1, a + n + 1);
for( i = 1 ; i < n ; ++i ){
if( a[i] * ( n - i) > max ) {
max = a[i] * ( n - i+1);
pozfin = i;
}
}
for( i = n ; i > pozfin ; --i ){
sum = ( a[i] * val ) + max;
if( sum - ( a[pozfin] * val ) > max2 ) { max2 = sum - ( a[pozfin] * val ); }
}
printf("%lld", max2);
}