Cod sursa(job #2812708)

Utilizator cdenisCovei Denis cdenis Data 4 decembrie 2021 22:06:08
Problema Orase Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

ifstream fin("orase.in");
ofstream fout("orase.out");

const int MAX=5e4+5;

struct st
{
    int d,l;
} v[MAX];

bool cmp(st a, st b)
{
    return a.d<b.d;
}

int D(st a, st b)
{
    return b.l+a.l+b.d-a.d;
}

int n,m,j,d,dmax;

int main()
{
    fin >> m >> n;
    for(int i=1;i<=n;i++)
        fin >> v[i].d >> v[i].l;
    sort(v+1,v+n+1,cmp);
    dmax=v[2].l+v[1].l+v[2].d-v[1].d;
    j=1;
    for(int i=3;i<=n;i++)
    {
        if(D(v[i-1],v[i])>D(v[j],v[i]))
            j=i-1;
        d=D(v[j],v[i]);
        if(d>dmax)
            dmax=d;
    }
    fout << dmax;
    return 0;
}