Cod sursa(job #768617)

Utilizator contdetestareTester contdetestare Data 17 iulie 2012 14:53:06
Problema Avioane Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <fstream>
#include <algorithm>
#define N 100000

using namespace std;

ifstream f("avioane.in");
ofstream g("avioane.out");

int n,i,A[N],j;
long long B[N],ANS,c;

int main ()
{
    f >> n;
    for (i=1;i<=n;i++)
        f >> A[i];
    sort(A+1,A+n+1);
    for (i=n;i>=1;i--)
    {
        B[i]=A[i];
        c=2*B[i];
        for (j=i+1;j<=n && c>B[j];j++)
        {
            B[j]=c;
            c+=A[i];
        }
    }
    for (i=1;i<=n;i++)
        ANS=max(ANS,B[i-1]+(n-i+1)*A[i]);
    g << ANS << '\n';
    f.close();g.close();
    return 0;
}