Cod sursa(job #1767483)

Utilizator Ruxandra985Nanu Ruxandra Laura Ruxandra985 Data 29 septembrie 2016 11:31:27
Problema Orase Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <cstdio>
#include <algorithm>
#include <iostream>

using namespace std;
pair <int,int> v[50001];
int main()
{
    FILE *fin=fopen ("orase.in","r");
    FILE *fout=fopen ("orase.out","w");
    int m,n,i,maxi,smax;
    fscanf (fin,"%d%d",&m,&n);
    for (i=1;i<=n;i++)
        fscanf (fin,"%d%d",&v[i].first,&v[i].second);
    sort (v+1,v+n+1);
    maxi=v[1].first;
    smax=0;
    for (i=2;i<=n;i++){
        if (maxi+v[i].first-v[i-1].first<v[i].second){
            smax=max(smax,maxi+v[i].first-v[i-1].first+v[i].second);
            maxi=v[i].second;
        }
        else maxi=maxi+v[i].first-v[i-1].first;
    }
    smax=max(smax,maxi+v[n].second);
    fprintf (fout,"%d",smax);
    return 0;
}