Cod sursa(job #2815704)

Utilizator andreea_chivuAndreea Chivu andreea_chivu Data 10 decembrie 2021 09:25:40
Problema Orase Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>
#include <utility>
#include <algorithm>

using namespace std;

pair <int,int> orase[50001];

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

    int m, n, dmax;
    fin >> m >> n;

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

    sort(orase, orase+n);

    int dc = dmax = orase[1].first - orase[0].first + orase[0].second + orase[1].second;
    for(int i = 2; i < n; i++){
        dc += orase[i].first - orase[i - 1].first + orase[i].second - orase[i - 1].second;
        dc = max(dc, orase[i].first - orase[i - 1].first + orase[i].second + orase[i - 1].second);
        dmax = max(dmax, dc);
    }

    fout << dmax;

    fin.close();
    fout.close();

    return 0;
}