Pagini recente » Cod sursa (job #2741395) | Cod sursa (job #945074) | Cod sursa (job #732018) | Cod sursa (job #2741381) | Cod sursa (job #541253)
Cod sursa(job #541253)
#include <cstdio>
#include <algorithm>
using namespace std;
int s,i,p,u,ul,pr,smax,n,m,c,d;
struct oras
{
int d;
int l;
};
bool cmp(oras x,oras y)
{
return(x.d<y.d);
}
oras a[50005];
void Read()
{
freopen("orase.in","r",stdin);
freopen("orase.out","w",stdout);
scanf("%d%d",&n,&m);
// for(i=1;i<=n;i++)
// {
scanf("%d%d",&a[1].d,&a[1].l);
scanf("%d%d",&a[2].d,&a[2].l);
// }
s=0;
smax=0;
}
void Do()
{
sort(a+1,a+n+1,cmp);
s=a[1].l+a[2].l+a[2].d;
for(i=3;i<=n;i++)
{
scanf("%d%d",&a[i].d,&a[i].l);
if(s-a[i-1].l+a[i].l+a[i].d-a[i-1].d>=a[i-1].l+a[i].l+a[i].d-a[i-1].d)
{
s=s-a[i-1].l+a[i].l+a[i].d-a[i-1].d;
}
else
{
s=a[i-1].l+a[i].l+a[i].d-a[i-1].d;
}
if(s>smax)
{
smax=s;
}
}
}
void Write()
{
printf("%d",smax);
}
int main()
{
Read();
Do();
Write();
return 0;
}