Cod sursa(job #2585725)

Utilizator cnicbforta steaua cnicb Data 19 martie 2020 12:47:08
Problema Orase Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f ( "orase.in" );
ofstream g ( "orase.out" );
struct strazi
{
    int d, l;
};
strazi v[50002];
bool cmpx ( strazi a, strazi b )
{
    if ( a.d == b.d )
        return a.l < b.l;

    return a.d < b.d;
}
int main()
{
    int N, M;
    f >> M >> N;

    for ( int i = 1; i <= N; i++ )
        f >> v[i].d >> v[i].l;

    sort ( v + 1, v + N + 1, cmpx );
    strazi ultim = v[1];
    int dmax = 0;

    for ( int i = 2; i <= N; i++ )
    {
         int dist=v[i].d-ultim.d+v[i].l+ultim.l;
         if(dist>dmax)
            dmax=dist;
         if(v[i].l>ultim.l+ultim.d)
            ultim=v[i];
    }
    g<<dmax;

    return 0;
}