Cod sursa(job #2667660)

Utilizator georgecristian2002Raducanu George-Cristian georgecristian2002 Data 3 noiembrie 2020 18:40:35
Problema Carnati Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#include<algorithm>
using namespace std;

ifstream fin("carnati.in");
ofstream fout("carnati.out");

struct cump
{
    int t,p;
} a[2001];

bool comp(cump x, cump y)
{
    return x.t<y.t;

}
int main()
{
    int n,c=0,rez=0,i,j,v[2001]={0};
    fin>>n>>c;
    for(i=1; i<=n; i++)
    {
        fin>>a[i].t>>a[i].p;
    }
    sort(a+1,a+n+1,comp);
    a[0].t=a[1].t-1;

    for(i=1; i<=n; i++)
    {
        for(j=1; j<=n; j++)
        {
            v[j]=0;
            if(a[i].p<=a[j].p) v[j]=a[i].p;
            v[j]=max(v[j]+v[j-1]-(a[j].t-a[j-1].t)*c,v[j]-c);
            rez=max(rez,v[j]);
        }
    }
    fout<<rez;
    return 0;
}