Cod sursa(job #3361702)

Utilizator Horea_88Bodea Horea Florin Horea_88 Data 27 iulie 2026 19:16:24
Problema Orase Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#include <algorithm>

using namespace std;

struct Oras {
    long long d, l;
};

bool compara(const Oras& a, const Oras& b) {
    return a.d < b.d;
}

Oras v[50005];

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

    long long m, n;
    fin >> m >> n;

    for (int i = 0; i < n; ++i) {
        fin >> v[i].d >> v[i].l;
    }

    sort(v, v + n, compara);

    long long max_global = 0;
    long long max_dif = v[0].l - v[0].d;

    for (int j = 1; j < n; ++j) {
        long long dist_curenta = v[j].l + v[j].d + max_dif;
        if (dist_curenta > max_global) {
            max_global = dist_curenta;
        }
        if (v[j].l - v[j].d > max_dif) {
            max_dif = v[j].l - v[j].d;
        }
    }

    fout << max_global << "\n";

    return 0;
}