Pagini recente » Cod sursa (job #2838022) | Cod sursa (job #2118174) | Cod sursa (job #34383) | Cod sursa (job #1436309) | Cod sursa (job #2851605)
#include <bits/stdc++.h>
#define nmax 50005
using namespace std;
ifstream in("tribute.in");
ofstream out("tribute.out");
int x[nmax],y[nmax];
int dx,dy,n;
void input()
{
in>>n>>dx>>dy;
for(int i=0;i<n;i++)
{
int a,b;
in>>a>>b;
x[a]++;
y[b]++;
}
}
int getx()
{
int i,j;
int farther=0,closer=n;
int sum=0;
i=j=0;
for(;j<=dx;j++)
{
closer-=x[j];
}
j--;
for(int ii=j+1;ii<nmax;ii++)
{
sum+=(ii-j)*x[ii];
}
int minn=sum;
while(j<nmax)
{
minn=min(minn,sum);
farther+=x[i++];
sum+=farther-closer;
closer-=x[++j];
}
return minn;
}
int gety()
{
int i,j;
int farther=0,closer=n;
int sum=0;
i=j=0;
for(;j<=dy;j++)
{
closer-=y[j];
}
j--;
for(int ii=j+1;ii<nmax;ii++)
{
sum+=(ii-j)*y[ii];
}
int minn=sum;
while(j<nmax)
{
minn=min(minn,sum);
farther+=y[i++];
sum+=farther-closer;
closer-=y[++j];
}
return minn;
}
int main()
{
input();
out<<getx()+gety();
}