Cod sursa(job #2323762)
| Utilizator | 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;
}
