Pagini recente » Cod sursa (job #790508) | Profil Serban2331 | Cod sursa (job #2045196) | Istoria paginii runda/lasm_baraj_cl10 | Cod sursa (job #1294842)
#include<fstream>
using namespace std;
int n, i, x, y, xmin, ymin, dx, dy, nrp;
int v[50001], w[50001], fx[50003], fy[50003], sx[50003], sy[50003];
ifstream fin("tribute.in");
ofstream fout("tribute.out");
int main(){
fin>> n >> dx >> dy;
for(i = 1; i <= n; i++){
fin>> x >> y;
v[x] ++;
w[y] ++;
}
nrp = v[50000];
for(i = 49999; i >= 0; i--){
fx[i] = fx[i+1] + nrp;
nrp += v[i];
}
nrp = w[50000];
for(i = 49999; i >= 0; i--){
fy[i] = fy[i+1] + nrp;
nrp += w[i];
}
nrp = v[0];
for(i = 1; i <= 50000; i++){
sx[i] = sx[i-1] + nrp;
nrp += v[i];
}
nrp = w[0];
for(i = 1; i <= 50000; i++){
sy[i] = sy[i-1] + nrp;
nrp += w[i];
}
xmin = fx[dx];
for(i = 1; i <= 50000-dx; i++){
if(xmin > fx[i+dx] + sx[i]){
xmin = fx[i+dx] + sx[i];
}
}
ymin = fy[dy];
for(i = 1; i <= 50000-dy; i++){
if(ymin > fy[i+dy] + sy[i]){
ymin = fy[i+dy] + sy[i];
}
}
fout<< xmin + ymin;
return 0;
}