Pagini recente » Cod sursa (job #2107443) | Cod sursa (job #2709297) | Cod sursa (job #3210565) | Cod sursa (job #1781562) | Cod sursa (job #373999)
Cod sursa(job #373999)
using namespace std;
#include <fstream>
#include <iostream>
#include <cassert>
int n,c,t[2005],p[2005],v[1505],tmax;
int main(){
ifstream fin("carnati.in");
fin>>n>>c;
for(int i=1;i<=n;i++){
fin>>t[i]>>p[i];
if(t[i]>tmax)
tmax=t[i];
}
fin.close();
int pmax=-(1<<30);
for(int i=1;i<=n;i++){
for(int j=0;j<=tmax; j++)
v[j]=-c;
for(int j=1;j<=n;j++)
if(p[i]<=p[j])
v[t[j]]+=p[i];
int sum=v[0],sumMax=-(1);
for(int j=1;j<=tmax;j++){
if(sum<0)
sum=v[j];
else
sum+=v[j];
if(sum>sumMax)
sumMax=sum;
}
if(sumMax>pmax)
pmax=sumMax;
}
ofstream fout("carnati.out");
fout<<pmax;
return 0;
}