Cod sursa(job #1301118)

Utilizator EpictetStamatin Cristian Epictet Data 25 decembrie 2014 16:39:01
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("orase.in");
ofstream fout ("orase.out");
struct art { int D, L; } V[50010];
int M, N, sum, summax;

bool cmp(art a, art b)
{
    return (a.D < b.D);
}

int main()
{
    fin >> M >> N;
    for (int i = 1; i <= N; i++) fin >> V[i].D >> V[i].L;
    sort (V + 1, V + 1 + N, cmp);

    for (int i = 0, j = 1; j <= N; j++)
    {
        sum = V[i].L + V[j].L + (V[j].D - V[i].D);
        if (sum > summax) summax = sum;
        if (V[j].L > V[i].L + (V[j].D - V[i].D)) i = j;
    }

    fout << summax << '\n';
    fout.close();
    return 0;
}