Pagini recente » Cod sursa (job #3163929) | Cod sursa (job #1027378) | Cod sursa (job #256172) | Cod sursa (job #2735193) | Cod sursa (job #2553477)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("heavymetal.in");
ofstream cout("heavymetal.out");
struct ura{
int a,b;
};
bool cmp(ura a,ura b){
if(a.b<=b.b)
return true;
return false;
}
ura v[100001];
long long d[100001];
int main()
{
int n,i,st,dr,mij,elem;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i].a>>v[i].b;
sort(v+1,v+n+1,cmp);
for(i=1;i<=n;i++){
st=0;
dr=i-1;
while(st<=dr){
mij=(st+dr)/2;
if(v[mij].b>v[i].a)
dr=mij-1;
else{
st=mij+1;
elem=mij;
}
d[i]=max(d[i-1],d[elem]+v[i].b-v[i].a);
}
}
cout<<d[n];
return 0;
}