Pagini recente » Cod sursa (job #1875726) | Cod sursa (job #705988) | Cod sursa (job #2027716) | Cod sursa (job #52376) | Cod sursa (job #1097991)
#include<fstream>
#include<algorithm>
using namespace std;
struct punct {int d,l;};
punct Oras[50010];
int n,m,maxim;
bool cmp(punct A,punct B) {
return A.d<B.d;
}
void citire() {
ifstream in("orase.in");
int i;
in>>m>>n;
for(i=1;i<=n;i++)
in>>Oras[i].d>>Oras[i].l;
in.close();
}
void solve() {
int i,dist,last;
sort(Oras+1,Oras+n+1,cmp);
last=1;
for(i=2;i<=n;i++) {
dist=Oras[last].l+Oras[i].l+(Oras[i].d-Oras[last].d);
if(Oras[i].l>Oras[last].l+Oras[i].d-Oras[last].d)
last=i;
if(dist>maxim)
maxim=dist;
}
}
void afisare() {
ofstream out ("orase.out");
out<<maxim<<'\n';
out.close();
}
int main() {
citire();
solve();
afisare();
return 0;
}