Pagini recente » Cod sursa (job #1336206) | Cod sursa (job #2566528)
#include <bits/stdc++.h>
#define oo 50000
using namespace std;
ifstream f("tribute.in");
ofstream g("tribute.out");
typedef unsigned long long int ll;
ll n, dx, dy, x, y, xmax, ymax, xmin = 2e12, ymin = 2e12;
ll dsx[oo + 1], ddx[oo + 1], djy[oo + 1], dsy[oo + 1], fx[oo + 1], fy[oo + 1];
void Read()
{
f>>n>>dx>>dy;
for(int i = 1;i <= n;++i)
{
f>>x>>y;
fx[x]++;
fy[y]++;
}
}
void Solve()
{
ll sumx, sumy;
sumx = fx[0];
sumy = fy[0];
for(int i = 1;i <= oo;++i)
{
dsx[i] = dsx[i - 1] + sumx;
sumx += fx[i];
djy[i] = djy[i - 1] + sumy;
sumy += fy[i];
}
sumx = fx[oo];
sumy = fy[oo];
for(int i = oo - 1;i >= 0;--i)
{
ddx[i] = ddx[i + 1] + sumx;
sumx += fx[i];
dsy[i] = dsy[i + 1] + sumy;
sumy += fy[i];
}
for(int i = 0;i <= oo - dx;++i)
{
xmin = min(xmin, dsx[i] + ddx[i + dx]);
ymin = min(ymin, djy[i] + dsy[i + dy]);
}
g<<xmin + ymin<<'\n';
g.close();
}
int main()
{
Read();
Solve();
return 0;
}