Cod sursa(job #1083345)

Utilizator iordache.bogdanIordache Ioan-Bogdan iordache.bogdan Data 15 ianuarie 2014 22:00:16
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
#include <algorithm>

using namespace std;

int n,m,i,Max,sol;

pair<int,int> v[50005];

int main(){
    ifstream f("orase.in");
    ofstream g("orase.out");
    f>>m>>n;
    for(i=1;i<=n;i++)
        f>>v[i].first>>v[i].second;
    sort(v+1,v+n+1);
    Max=v[1].second;
    for(i=2;i<=n;i++) {
        if(v[i].first - v[i-1].first + v[i].second + Max > sol)
            sol = v[i].first - v[i-1].first + v[i].second + Max;
        if(v[i].second < Max + v[i].first - v[i-1].first)
            Max = Max + v[i].first - v[i-1].first;
        else
            Max=v[i].second;
    }
    g<<sol<<"\n";
    return 0;
}