Cod sursa(job #1647979)

Utilizator AnaRaduAna-Maria Radu AnaRadu Data 10 martie 2016 23:10:18
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <stdio.h>
#include <algorithm>
#define valmax 2000000000
#define lim 50005
using namespace std;
struct elem{int h,d;};
elem v[lim];
bool cmp(elem a,elem b){
    if(a.h<b.h)
        return true;
    if(a.h>b.h)
        return false;
    if(a.d<b.d)
        return true;
    else
        return false;
}
int main(){
    FILE *fin,*fout;
    fin=fopen("orase.in","r");
    fout=fopen("orase.out","w");
    int i,n,m,max=0,rasp=0;
    fscanf(fin,"%d%d",&m,&n);
    for(i=1;i<=n;i++)
        fscanf(fin,"%d%d",&v[i].h,&v[i].d);
    sort(v+1,v+n+1,cmp);
    for(i=1;i<=n;i++){
        if(v[i].h+v[i].d+max>rasp)
            rasp=v[i].h+v[i].d+max;
        if(v[i].d-v[i].h>max)
            max=v[i].d-v[i].h;
    }
    fprintf(fout,"%d",rasp);
    fclose(fin);
    fclose(fout);
    return 0;
}