Cod sursa(job #1169225)

Utilizator wollyFusy Wool wolly Data 10 aprilie 2014 18:20:39
Problema Avioane Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
# include <fstream>
# include <algorithm>
using namespace std;

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

int n, i;
long long a[100010];

long long maxv (int f)
{
    long long mx,vl;
    int i;
    vl = 0;
    for (i = f; i>=1; i--)
    {
        mx=a[i]*(f-i+1);
        if ( mx > vl )
        {
            vl = mx;
        }
    }
    return vl;
}



int main ()
{
    f >> n;

    for (i = 1; i <= n; ++i)
        f >> a[i];

    sort (a + 1, a + n + 1);

    long long mxp=0,mxt=0,mx=0;

    for (i = n; i>=2; i--)
    {
        if (a[i]*(n-i+1)>mxp)
        {
        mxp = a[i]*(n-i+1);
        mx=a[i] * (n-i+1)+maxv(i-1);
        if (mx > mxt) mxt = mx;
        }
    }

    g << mxt << '\n';

    g.close ();

    return 0;
}