Cod sursa(job #655775)
Utilizator | Bogdan Beldea beldeabogdan | Data | 3 ianuarie 2012 14:27:52 |
---|---|---|---|
Problema | Orase | Scor | 80 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("orase.in");
ofstream g("orase.out");
int spr,n,i,y,dmax,dc;
struct strada {
int d,l;
};
strada a[50005];
bool cmp(strada x,strada y) {
return(x.l>y.l);
}
int main() {
f>>spr>>n;
for (i=1;i<=n;i++) f>>a[i].d>>a[i].l;
sort(a+1,a+n+1,cmp);
dmax=0;
y=1;
for (i=2;i<=n;i++) {
dc=a[i].d-a[y].d+a[i].l+a[y].l;
if (dc>dmax) dmax=dc;
if(a[i].l>a[y].l+a[i].d-a[y].d) y=i;
}
g<<dmax;
return 0;
}