Pagini recente » Statistici Arseniu Darius Andrei (ArseniuDarius) | Cod sursa (job #3361005) | Cod sursa (job #3361009) | Diferente pentru algoritmiada-2017/runda-finala/program intre reviziile 7 si 6 | Cod sursa (job #3361006)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("orase.in");
ofstream fout("orase.out");
long long n, m, maxim;
pair<int, int> orase[50005], celMaiDepartat;
int main() {
fin >> m >> n;
for (int i = 1; i <= n; i ++) {
fin >> orase[i].first >> orase[i].second;
}
sort(orase + 1, orase + n + 1);
celMaiDepartat = orase[1];
for (int i = 2; i <= n; i ++) {
if (orase[i].second + (orase[i].first - celMaiDepartat.first) + celMaiDepartat.second > maxim) {
maxim = orase[i].second + (orase[i].first - celMaiDepartat.first) + celMaiDepartat.second;
}
if (orase[i].second > (orase[i].first - celMaiDepartat.first) + celMaiDepartat.second) {
celMaiDepartat = orase[i];
}
}
fout << maxim;
}
/*
M=5 (lungimea strazii) N=4 (strazi)
0 3
2 2
2 7 CelMaiDepartat
5 6
*/