Pagini recente » Cod sursa (job #41747) | Cod sursa (job #1506729) | Cod sursa (job #1444013) | Cod sursa (job #50804) | Cod sursa (job #2961312)
#include<bits/stdc++.h>
using namespace std;
ifstream r("ograzi.in");
ofstream wr("ograzi.out");
int n, m, w, h, x[50003], y[50003], sol, c, d;
vector<int>p[193953];
vector<int>::iterator it;
void ver(int a,int b)
{
int z, v;
v=(97*a+b)%193939;
if(p[v].size()!=0)
{
for(it=p[v].begin(); it<p[v].end(); it++)
{
z=*it;
if(x[z] <= c && c<=x[z]+w && y[z] <= d && d <= y[z]+h)
{
sol++;
}
}
}
}
int main()
{
int a, b;
r>>n>>m>>w>>h;
for(int i=1; i<=n; i++)
{
r>>x[i]>>y[i];
a=(x[i]+w-1) / w;
b=(y[i]+h-1) / h;
p[(97*a+b)%193939].push_back(i);
}
for(int i=1; i<=m; i++)
{
r>>c>>d;
a=(c+w-1) / w;
b=(d+h-1) / h;
ver(a,b);
ver(a-1,b);
ver(a,b-1);
ver(a-1,b-1);
}
wr<<sol;
return 0;
}