Cod sursa(job #919397)

Utilizator apopeid13Apopeid Alejandro apopeid13 Data 19 martie 2013 17:08:31
Problema Heavy metal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
struct bg
{
    int x,y;
}v[100003];
int d[1000003];
bool cmp(bg a, bg b)
{
    return a.y<b.y;
}
int main()
{
    freopen("heavymetal.in","r",stdin);
    freopen("heavymetal.out","w",stdout);
    int l,n,i;
    l=1;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
        scanf("%d%d",&v[i].x,&v[i].y);
    sort(v+1,v+n+1,cmp);
    for(i=1;i<=v[n].y;i++)
    {
        d[i]=d[i-1];
        while(v[l].y==i)
        {
           d[i]=max(d[i],d[v[l].x]+i-v[l].x);
            l++;
        }
    }
    printf("%d" ,d[v[n].y]);
    return 0;
}