Pagini recente » Cod sursa (job #2750378) | Cod sursa (job #1399878) | Cod sursa (job #399692) | Cod sursa (job #1902000) | Cod sursa (job #423998)
Cod sursa(job #423998)
#include<fstream>
#define N 1<<17
#define ll long long
using namespace std;
ifstream f1 ("heavymetal.in");
ofstream f2 ("heavymetal.out");
struct trupa {ll a,b;};
ll tmax=0,n,best[N];
trupa t[N];
int cmp(trupa a, trupa b)
{
return a.b<b.b;
}
int main()
{
ll i,j,x,y;
f1>>n;
for (i=1; i<=n; i++) {f1>>x>>y; t[i].a=x; t[i].b=y; if (t[i].b>tmax) tmax=t[i].b;}
sort (t+1,t+n+1,cmp);
int k=1;
best[0]=0;
for (i=1; i<=tmax; i++)
{
best[i]=best[i-1];
if (t[k].b==i)
while (t[k].b==i)
{
best[i]=max(best[i], best[t[k].a] + (t[k].b - t[k].a));
++k;
}
}
f2<<best[tmax];
return 0;
}