Pagini recente » Cod sursa (job #2510943) | Cod sursa (job #162951) | Cod sursa (job #2109345) | Cod sursa (job #1099636) | Cod sursa (job #2117244)
#include <fstream>
#include <algorithm>
#define DEF 50010
using namespace std;
ifstream fin ("orase.in");
ofstream fout ("orase.out");
pair < int, int > v[DEF], Max;
int sol, n, m;
bool cmp (pair < int, int > a, pair < int, int > b) {
if (a.first == b.first)
return a.second > b.second;
return a.first < b.first;
}
int main () {
fin >> m >> n;
for (int i = 1; i <= n; ++ i) {
fin >> v[i].first >> v[i].second;
}
sort (v + 1, v + n + 1, cmp);
Max = v[1];
for (int i = 2; i <= n; ++ i) {
if (v[i].first == Max.first)
continue;
sol = max (sol, Max.second + (v[i].first - Max.first) + v[i].second);
if (v[i].second > Max.second + (v[i].first - Max.first))
Max = v[i];
}
fout << sol;
return 0;
}