Cod sursa(job #2815628)

Utilizator ana_valeriaAna Valeria Duguleanu ana_valeria Data 9 decembrie 2021 22:30:47
Problema Carnati Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.97 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin ("carnati.in");
ofstream cout ("carnati.out");
struct ura
{
    int timp,pret;
};
ura v[2010];
bool cmp(ura a,ura b)
{
    if (a.timp<b.timp)
        return true;
    else
        return false;
}
int main()
{
    int n,salariu_vanzator,i,j,pret_fixat,s,maxx,maxim;
    cin>>n>>salariu_vanzator;
    for (i=1; i<=n; i++)
        cin>>v[i].timp>>v[i].pret;
    sort (v+1,v+n+1,cmp);
    maxim=-1000000000;
    for (i=1; i<=n; i++)
    {
        pret_fixat=v[i].pret;
        s=0;
        maxx=-1000000000;
        for (j=1; j<=n; j++)
        {
            if (j>1)
                s=s-(v[j].timp-v[j-1].timp)*salariu_vanzator;
            if (s<0)
                s=0;
            if (v[j].pret>=pret_fixat)
                s=s+pret_fixat;
            if (s>maxx)
                maxx=s;
        }
        if (maxx-salariu_vanzator>maxim)
            maxim=maxx-salariu_vanzator;
    }
    cout<<maxim;
    return 0;
}