Cod sursa(job #1582077)

Utilizator edicCiuculescu Eduard edic Data 27 ianuarie 2016 17:22:04
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<cstdio>
#include<algorithm>
using namespace std;
struct oras{int d,x;};
oras v[50002];
bool so(oras a,oras b)
{
    if(a.d<b.d)
        return true;
    return false;
}
int main()
{
    freopen("orase.in","r",stdin);
    freopen("orase.out","w",stdout);
    int n,i,d,mas=0,h=0,t=0,m;
    scanf("%d%d",&m,&n);
    for(i=1;i<=n;i++)
    {
        scanf("%d%d",&v[i].d,&v[i].x);
    }
    sort(v+1,v+n+1,so);
    for(i=1;i<=n;i++)
    {
        if(v[i].x+v[i].d+t-h>mas)
        {
            mas=v[i].x+v[i].d+t-h;
        }
        if(v[i].x-(v[i].d-h)>t)
        {
            h=v[i].d;
            t=v[i].x;
        }
    }
    printf("%d",mas);
    return 0;
}