#include<cstdio>
int i,j,n,dx,dy,x[50009],y[50009],nrd,sumd,dr,nrst,st,sumst,minx=50009,miny=50009,maxx,maxy;
int max(int a,int b)
{
if(a>b) return a;
return b;
}
int min(int a,int b)
{
if(a<b) return a;
return b;
}
int main()
{
freopen("tribute.in","r",stdin);
freopen("tribute.out","w",stdout);
scanf("%d%d%d",&n,&dx,&dy);
for(i=1;i<=n;++i)
{
int a,b;
scanf("%d%d",&a,&b);
x[a]++;
y[b]++;
if(a>dx)
{
sumd+=a;
nrd++;
}
maxx=max(maxx,a);
maxy=max(maxy,b);
}
nrst=0;
sumst=0;
for(st=0,dr=dx;dr<=maxx;st++,dr++)
{
minx=min(minx,sumd-(nrd*dr)+ (st*nrst)-sumst);
nrst+=x[st];
sumst+=(st*x[st]);
nrd-=x[dr+1];
sumd-=((dr+1)*x[dr+1]);
}
nrst=0;
sumst=0;
for(i=dy+1;i<=maxy;++i)
{
nrd+=y[i];
sumd+=(y[i]*i);
}
for(st=0,dr=dy;dr<=maxy;st++,dr++)
{
miny=min(miny,sumd-(nrd*dr)+ (st*nrst)-sumst);
nrst+=y[st];
sumst+=(st*y[st]);
nrd-=y[dr+1];
sumd-=((dr+1)*y[dr+1]);
}
printf("%d\n",minx+miny);
fclose(stdin);
fclose(stdout);
return 0;
}