Pagini recente » Cod sursa (job #712748) | Cod sursa (job #81791) | Cod sursa (job #1503491) | Cod sursa (job #62046) | Cod sursa (job #1483944)
#include<cstdio>
#include<algorithm>
using namespace std;
unsigned x[50005],y[50005],n,a,b,i;
unsigned A(int x[],int a) {
unsigned k=0,j=0,m=(1<<31),z[50005]={0},p[50005],r[50005];
sort(x+1,x+n+1);
if(a>=x[n]-x[1])
return 0;
for(i=1;i<=n;i++)
z[x[i]+1]++;
z[x[1]]=p[x[1]]=r[x[1]]=0;
for(i=x[1];i<=x[n]-a;i++)
j+=z[i],p[i+1]=p[i]+j,k+=z[x[n]-i+2],r[i+1]=r[i]+k;
for(i=x[1];i<=x[n]-a;i++)
if(m>(k=p[i+1]+r[x[n]-a-i+1]))
m=k;
return m;
}
int main() {
freopen("tribute.in","r",stdin),freopen("tribute.out","w",stdout),scanf("%u%u%u",&n,&a,&b);
for(i=1;i<=n;i++)
scanf("%u%u",x+i,y+i);
printf("%u",A(x,a)+A(y,b));
}