Pagini recente » Cod sursa (job #8988) | Cod sursa (job #2953012) | Cod sursa (job #1913577) | Cod sursa (job #679809) | Cod sursa (job #1004203)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream in ("orase.in");
ofstream out ("orase.out");
struct oras {
int l,d;
bool operator<(const oras& rhs) const {
return (d < rhs.d);
}
};
int n,m;
vector<oras> v;
int main() {
in >> m >> n;
v.resize(n);
for(int i = 0; i < n; ++i)
in >> v[i].d >> v[i].l;
sort(v.begin(),v.end());
int curMax = 0;
int curMaxInd = 0;
int maxDist = 0;
for(int i = 1; i < n; ++i) {
maxDist = max(maxDist,v[i].l+v[i].d+v[curMaxInd].l-v[curMaxInd].d);
if(v[i].l-v[i].d > curMax) {
curMax = v[i].l-v[i].d;
curMaxInd = i;
}
}
out << maxDist << '\n';
return 0;
}