Pagini recente » Cod sursa (job #3277360) | Cod sursa (job #1004254) | Cod sursa (job #985515) | Cod sursa (job #727317) | Cod sursa (job #3310394)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("orase.in");
ofstream fout ("orase.out");
struct str{
int poz, lung;
};
str v[1000000];
bool cmp (str a, str b){
if (a.poz!=b.poz){
if (a.poz < b.poz){
return true;
}
else
return false;
}
else{
if (a.lung < b.lung)
return true;
else
return false;
}
}
int main()
{ int n, m, i, j=1;
fin >> m >> n;
for (i=1;i<=n;i++){
fin >> v[i].poz >> v[i].lung;
}
sort (v+1, v+n+1, cmp);
int s=0, minsum=100000, dmax=0;
for (i=1;i<=n;i++){
s=v[i].poz+v[i].lung;
if (s-minsum>dmax){
dmax=s-minsum;
}
if (minsum>s-2*v[i].lung){
minsum=s-2*v[i].lung;
}
}
fout << dmax;
return 0;
}