Cod sursa(job #1262968)

Utilizator AndyCatrunaCatruna Andy AndyCatruna Data 13 noiembrie 2014 19:25:16
Problema Orase Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("orase.in");
ofstream fout("orase.out");
int n,i,m,maxim,nr,v[50010],f[50010];
int main(){
    fin>>m>>n;
    for(i=1;i<=n;i++){
        fin>>v[i]>>f[i];
    }
    sort(v+1,v+n+1);
    sort(f+1,f+n+1);
    maxim=f[1];
    for(i=2;i<=n;i++){
        if(v[i]-v[i-1]+f[i]+maxim>nr){
            nr=v[i]-v[i-1]+f[i]+maxim;
        }
        if(f[i]<maxim+v[i]-v[i-1]){
            maxim=maxim+v[i]-v[i-1];
        }
        else{
            maxim=f[i];
        }
    }
    fout<<nr<<"\n";


    return 0;
}