Pagini recente » Cod sursa (job #3274507) | Monitorul de evaluare | Cod sursa (job #2425537) | Cod sursa (job #2693576) | Cod sursa (job #3247252)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("carnati.in");
ofstream g("carnati.out");
struct
{
int pret,timp;
}v[2001];
int main()
{
int n, t, i, j, poz, maxx=-1;
f >> n >> t;
for( i=1; i <=n ; i++ )
f >> v[i].timp >> v[i].pret;
for( i=1; i <= n; i++ )
{
int p = v[i].pret;
int s = 0;
for( j=1; j <= n; j++ )
{
if( v[j].pret >= p )
{
poz = v[j].timp - 1;
break;
}
}
for( j=1; j <= n; j++ )
{
if( p <= v[j].pret )
{
if( p - t >= s + p - (v[j].timp - poz)*t )
s = p - t;
else s += p - (v[j].timp - poz)*t;
poz = v[j].timp;
if( maxx < s)
maxx=s;
}
}
}
g<<maxx;
return 0;
}