Cod sursa(job #2670239)

Utilizator rapidu36Victor Manz rapidu36 Data 9 noiembrie 2020 14:52:37
Problema Orase Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#include <algorithm>
#include <cstdlib>

using namespace std;

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

const int N = 50000;

int m, n;
pair <int, int> v[N];


int dist(pair <int, int> x, pair <int, int> y)
{
    return (x.second + y.second + y.first - x.first);
}

int main()
{
    in >> m >> n;
    for (int i = 0; i < n; i++)
    {
        in >> v[i].first >> v[i].second;
    }
    in.close();
    sort(v, v + n);
    int dc, dmax;
    dc = dmax = dist(v[0], v[1]);
    int u = 0;
    for (int i = 2; i < n; i++)
    {
        if (dist(v[i-1], v[i]) > dist(v[u], v[i]))
        {
            u = i - 1;
        }
        dc = dist(v[u], v[i]);
        if (dc > dmax)
        {
            dmax = dc;
        }
    }
    out << dmax;
    out.close();
    return 0;
}