Pagini recente » Cod sursa (job #505488) | Cod sursa (job #3267490) | Cod sursa (job #2653603) | Cod sursa (job #1529201) | Cod sursa (job #1981999)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f ("heavymetal.in");
ofstream g ("heavymetal.out");
int n,d[1000001],sol;
struct usu
{
int a,b;
}v[100003];
bool cmp(usu t1,usu t2)
{
if(t1.b>t2.b) return 0;
if(t1.b==t2.b&&t1.a>t2.a) return 0;
return 1;
}
int main()
{
f>>n;
for(int i=1;i<=n;++i) f>>v[i].a>>v[i].b;
sort(v+1,v+n+1,cmp);
for(int i=1;i<=n;++i)
{
bool ok=0;
if(!d[v[i].a]) ok=1;
d[v[i].b]=max(d[v[i].b],d[v[i].a]+v[i].b-v[i].a+ok);
sol=max(sol,d[v[i].b]);
}
g<<sol;
return 0;
}