Pagini recente » Cod sursa (job #2627509) | Cod sursa (job #2722789) | Cod sursa (job #2962123) | Cod sursa (job #3215392) | Cod sursa (job #1306110)
#include <cstdio>
FILE* in=fopen("tribute.in","r");
FILE* out=fopen("tribute.out","w");
const int Q=50002;
int n,l,c;
int x[Q],y[Q];
int a[Q],b[Q];
int make(int v[],int h)
{
int nr=0;
for(int i=0; i<=Q-2; i++)
{
a[i]=nr+a[i-1];
nr+=v[i];
}
nr=0;
for(int i=Q-2; i>=0; i--)
{
b[i]=nr+b[i+1];
nr+=v[i];
}
int min=2000000000;
for(int i=1; i<=Q-2-h; i++)
{
if(a[i]+b[i+h]<min)
min=a[i]+b[i+h];
}
return min;
}
int main()
{
fscanf(in,"%d%d%d",&n,&l,&c);
int a,b;
for(int i=1; i<=n; i++)
{
fscanf(in,"%d%d",&a,&b);
x[a]++;
y[b]++;
}
int rez;
rez=make(x,l);
rez+=make(y,c);
fprintf(out,"%d",rez);
return 0;
}