Pagini recente » Cod sursa (job #2794034) | Cod sursa (job #561457) | Cod sursa (job #1752928) | Cod sursa (job #1512159) | Cod sursa (job #495920)
Cod sursa(job #495920)
#include <fstream>
using namespace std;
struct oras{int x,d;} v[1<<16];
int maxim,n;
ifstream in("orase.in");
ofstream out("orase.out");
bool cmp(oras a,oras b)
{
return a.x<b.x || a.x==b.x && a.d<b.d;
}
inline int dist(oras a,oras b)
{
return a.d+b.d+b.x-a.x;
}
int main()
{
int d=-1,i;
in>>n>>n;
for (i=1;i<=n;i++)
in>>v[i].x>>v[i].d;
sort(v+1,v+n+1,cmp);
maxim=1;
for (i=2;i<=n;i++)
{
d=max(d,dist(v[maxim],v[i]));
if (v[i].d>v[maxim].x+v[maxim].d)
maxim=i;
}
out<<d<<"\n";
return 0;
}