Cod sursa(job #1209518)
Utilizator | UAIC.VlasCatalin ctlin04 | Data | 17 iulie 2014 22:11:17 |
---|---|---|---|
Problema | Avioane | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Teme Pregatire ACM Unibuc 2013 Semestrul 2 | Marime | 0.52 kb |
#include<fstream>
#include<algorithm>
using namespace std;
long long a[100005],i,j,p1,p2,sol,p;
int l,r,l1,l2,n;
int main(void) {
ifstream fin("avioane.in");
ofstream fout("avioane.out");
fin>>n;
for (i=1; i<=n; ++i) fin>>a[i];
sort(a+1,a+n+1);
p1=n; p2=n;
while (p2>=1) {
while ( (p2-p1)*a[p1]<(p2-p1+1)*a[p1-1]&&p1>0 ) --p1;
sol=max(sol,a[p2]*(n-p2+1)+a[p1]*(p2-p1) );
--p2;
}
fout<<sol;
return 0;
}