Cod sursa(job #2670118)

Utilizator maramihaliMara Mihali maramihali Data 9 noiembrie 2020 08:33:48
Problema Orase Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;

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

pair <int, int> drum[50001];

int main()
{
    int n, m, best, sol = 0;
    in >> m >> n;
    int a, b;
    for(int i = 1; i <= n; i++)
    {
        in >> a >> b;
        drum[i] = {a, b};
    }
    sort(drum + 1, drum + n + 1);
    best = drum[1].second;
    int last = drum[1].first;
    for(int i = 2; i <= n; i++)
    {
        best = best + drum[i].first - last;
        sol = max(sol, best + drum[i].second);
        best = max(best, drum[i].second);
        last = drum[i].first;
    }
    out << sol;
    return 0;
}