Pagini recente » Cod sursa (job #297219) | Cod sursa (job #1669149) | Cod sursa (job #2355278) | Cod sursa (job #1422066) | Cod sursa (job #532629)
Cod sursa(job #532629)
#include <fstream.h>
#include <algorithm>
#define M 1000001
#define N 50001
using namespace std;
ifstream fin("orase.in");
ofstream fout("orase.out");
int n,m,best = -int(2e9), maxj; // ds[N] distante strazi , dso[N] distanta strazi orase
struct dist{
int ds;
int dso;
};
dist d[N];
int cmp(const dist &x,const dist &y){
return (x.ds < y.ds);
}
void read(){
int i;
fin>>m>>n;
for (i=1;i<=n;i++)
fin>>d[i].ds>>d[i].dso;
}
void solve(){
int i;
maxj = d[1].dso-d[1].ds;
for (i=2; i<=n; i++){
if ( d[i].ds + d[i].dso + maxj > best)
best = d[i].ds + d[i].dso + maxj;
if ( d[i].dso-d[i].ds > maxj )
maxj = d[i].dso-d[i].ds;
}
}
int main(){
read();
sort(d+1,d+n+1,cmp);
solve();
fout<<best;
return 0;
}