Pagini recente » Cod sursa (job #1109923) | Cod sursa (job #746523) | Cod sursa (job #3132677) | Cod sursa (job #1530373) | Cod sursa (job #1146686)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("tribute.in");
ofstream g("tribute.out");
int n,m,i,dr,j,st,k,l,o,x[50002],y[50002],dx,dy;
long sc,s,sd,ss,rez;
int main()
{
f>>n>>dx>>dy;
for(i=1;i<=n;i++) f>>x[i]>>y[i];
sort(x+1,x+n+1);
dr=n;
while(dr&&x[dr]>dx)
{
sc+=x[dr]-dx;
dr--;
}
s=sc; st=1;
sd=sc;
for(i=1;i+dx<=x[n];i++)
{
while(x[st]<i&&st<n) st++;
sd-=n-dr;
ss+=st-1;
while(x[dr+1]<=i+dx&&dr<n) dr++;
s=min(s,ss+sd);
}
rez=s;
sort(y+1,y+n+1);
dr=n; sc=0;
while(dr&&y[dr]>dy)
{
sc+=y[dr]-dy;
dr--;
}
s=sc; st=1;
sd=sc;
ss=0;
for(i=1;i+dy<=y[n];i++)
{
while(y[st]<i&&st<n) st++;
sd-=n-dr;
ss+=st-1;
while(y[dr+1]<=i+dy&&dr<n) dr++;
s=min(s,ss+sd);
}
rez+=s;
g<<rez;
return 0;
}