[Cpp] # include <stdio. h ># include <cstring> const int maxn = 101; int c [maxn] [maxn]; inline int lowbit (int x) {return x & (-x );} void update (int x, int y) {for (int I = x; I <= maxn; I + = lowbit (I) for (int j = y; j <= maxn; j + = lowbit (j) c [I] [j] + = 1;} int sum (int x, int y) {int ans = 0; for (int I = x; I> 0; I-= lowbit (I) for (int j = y; j> 0; j-= lowbit (j )) ans + = c [I] [j]; return ans;} int main () {int n, w, h, x, y, s, t; while (scanf ("% d", & n) = 1 & n) {memset (c, 0, sizeof (c )); scanf ("% d", & w, & h); for (int I = 1; I <= n; I ++) {scanf ("% d", & x, & y); update (x, y);} scanf ("% d", & s, & t); int ans =-1; for (int I = 1; I <= w; I ++) for (int j = 1; j <= h; j ++) {www.2cto.com if (I + S-1> w | j + T-1> h) continue; int temp = sum (I + s-1, j + t-1) -sum (I-1, j + t-1)-sum (I + s-1, J-1) + sum (I-1, J-1); if (temp> ans) ans = temp ;} printf ("% d \ n", ans);} return 0 ;}