Pagini recente » Cod sursa (job #2313019) | Cod sursa (job #2363945) | Cod sursa (job #561106) | Profil Raz_Van_Barbascu | Cod sursa (job #1308044)
#include <stdio.h>
#include <algorithm>
#define N 50000
struct cord{int dist;int lung;} v[N];
bool cmp(cord a, cord b)
{
if(a.dist<b.dist)
return true;
return false;
}
int main()
{
FILE *fin,*fout;
fin=fopen("orase.in","r");
fout=fopen("orase.out","w");
int n,m;
fscanf(fin,"%d%d",&m,&n);
int i;
for(i=0;i<n;i++)
fscanf(fin,"%d%d",&v[i].dist,&v[i].lung);
int j,max=0;
std::sort(v,v+n,cmp);
i=1;
max=v[0].lung+v[0].dist;
for(j=2;j<n;j++)
{
int temp=v[i].lung+v[j].lung+v[j].dist-v[i].dist;
if(v[j].lung>v[i].lung+v[j].dist-v[i].dist)
i=j;
if(temp>max)
max=temp;
}
fprintf(fout,"%d",max);
return 0;
}