Cod sursa(job #2323762)

Utilizator sebi110Ciobanu Sebastian sebi110 Data 19 ianuarie 2019 17:27:00
Problema Carnati Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
#define NMAX 5002
using namespace std;
struct dat{
    int v,t;
}a[NMAX];
bool cmp(dat a,dat b)
{
    return a.v<b.v;
}
int fr[NMAX];
int main()
{
    int n,i,ans,pret,act,j,c;
    cin>>n>>c;
    for(i=1;i<=n;i++)
    {
        cin>>a[i].t>>a[i].v;
    }
    sort(a+1,a+n+1,cmp);
    ans=0;
    for(i=n;i>=1;i--)
    {
        fr[a[i].t]++;
        pret=a[i].v;
        act=0;
        for(j=0;j<=1500;j++)
        {
            act=act+fr[j]*pret-c;
            act=max(act,0);
            ans=max(ans,act);
        }
    }
    cout<<ans<<'\n';
    return 0;
}