Cod sursa(job #1701083)

Utilizator sucureiSucureiRobert sucurei Data 12 mai 2016 09:05:07
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
#include <cmath>
#include <algorithm>
using namespace std;

ifstream f("orase.in");
ofstream g("orase.out");

struct o
{
    int d, l;
}a[50001];

int n, m, i, Max = -2147483647, k = -2147483647;

bool dif(o a, o b)
{
    return a.d < b.d;
}

int main()
{
    f >> m >> n;
    for (i = 1; i <= n; i++)
        f >> a[i].d >> a[i].l;

    sort(a+1, a+n+1, dif);

    for (i = 1; i <= n; i++)
    {
        if (a[i].d+a[i].l+k > Max)
            Max = a[i].d+a[i].l+k;
        if (k < a[i].l - a[i].d)
            k = a[i].l - a[i].d;
    }

    g << Max;
    return 0;
}