Pagini recente » Cod sursa (job #1420219) | Cod sursa (job #3147887) | Cod sursa (job #2585068) | Cod sursa (job #440945) | Cod sursa (job #165625)
Cod sursa(job #165625)
#include<stdio.h>
struct aaa {int a,b;};
aaa s[50010],aux;
int k,c,p,min,p1,max,n,m,i;
void sort(){
for(i=2;i<=k;i++){
c=i;
p=c>>1;
while((p)&&(s[c].a>s[p].a)){
aux=s[c];
s[c]=s[p];
s[p]=aux;
c=p;
p=c>>1;
}
}
for(i=k;i>1;i--){
aux=s[i];
s[i]=s[1];
s[1]=aux;
p=1;
c=p<<1;
k--;
while(c<=k){
if((s[c].a<s[c+1].a)&&c<k){c++;}
if(s[p].a<s[c].a){
aux=s[p];
s[p]=s[c];
s[c]=aux;
p=c;
c=p<<1;
}
else{break;}
}
}
}
int main(){
FILE *f=fopen("orase.in","r");
fscanf(f,"%d %d",&m,&n);
for(i=1;i<=n;i++){
fscanf(f,"%d %d",&s[i].a,&s[i].b);
}
fclose(f);
k=n;
sort();
min=s[1].a-s[i].b;
p1=1;
for(i=2;i<=n;i++){
if(s[i].a+s[i].b-min>max)
max=s[i].a+s[i].b-min;
if(s[i].a-s[i].b<min){
min=s[i].a-s[i].b;
p1=i;
}
}
FILE *g=fopen("orase.out","w");
fprintf(g,"%d",max);
fclose(g);
return 0;
}