Pagini recente » Cod sursa (job #2044416) | Cod sursa (job #1045871) | Cod sursa (job #168748) | Cod sursa (job #3264549) | Cod sursa (job #796989)
Cod sursa(job #796989)
#include<stdio.h>
#include<algorithm>
using namespace std;
FILE *fin=fopen("orase.in","r");
FILE *fout=fopen("orase.out","w");
struct strada{
int d, l;
};
strada v[50010];
int cmp(strada a, strada b){
if(a.d == b.d){
return a.l<b.l;
}
return a.d<b.d;
}
int n,m;
int main(){
fscanf(fin,"%d %d",&m,&n);
for(int i = 1; i<=n; i++){
fscanf(fin,"%d %d",&v[i].d, &v[i].l);
}
sort(v+1, v+n+1, cmp);
int dm=0;
int sol=0;
for(int i = 1 ;i<=n ; i++){
dm+=( v[i].d - v[i-1].d );
if( dm+v[i].l > sol ){
sol = dm+v[i].l;
}
if(v[i].l > dm){
dm = v[i].l;
}
}
fprintf(fout,"%d",sol);
return 0;
}