Pagini recente » Cod sursa (job #3327413) | Cod sursa (job #3323380) | Cod sursa (job #3302461) | Cod sursa (job #3317915) | Cod sursa (job #3324597)
#include <fstream>
#define dim (int)(5e4+1)
using namespace std;
ifstream cin("tribute.in");
ofstream cout("tribute.out");
int n,dx,dy,coord[dim][2],x,y,st[dim],dr[dim],fr_st[dim],fr_dr[dim];
int solve(int tip,int d){
for(int i=0;i<dim;i++)
fr_st[i]=fr_dr[i]=st[i]=dr[i]=0;
for(int i=1;i<=n;i++){
fr_st[coord[i][tip]]++;
fr_dr[coord[i][tip]]++;
}
for(int i=1;i<dim;i++){
fr_st[i]+=fr_st[i-1];
st[i]=st[i-1]+fr_st[i-1];
}
for(int i=dim-2;i>0;i--){
fr_dr[i]+=fr_dr[i+1];
dr[i]=dr[i+1]+fr_dr[i+1];
}
int mini=dr[d];
for(int i=1;i<dim-d;i++)
mini=min(mini,st[i]+dr[i+d]);
return mini;
}
int main()
{
cin>>n>>dx>>dy;
for(int i=1;i<=n;i++)
cin>>coord[i][0]>>coord[i][1];
cout<<solve(0,dx)+solve(1,dy)<<'\n';
return 0;
}