#include #include #include int max(int a, int b) { return a > b ? a : b; } int min(int a, int b) { return a < b ? a : b; } int abs(int a) { return a > 0 ? a : -a; } int main() { int guards, incidents; scanf("%d %d", &guards, &incidents); std::vector guardX(guards); std::vector guardY(incidents); for (int i = 0; i < guards; i++) { scanf("%d %d", &(guardX[i]), &(guardY[i])); } for (int j = 0; j< incidents; j++) { int dist = INT_MAX; int incX, incY; scanf("%d %d", &incX, &incY); for (int i = 0; i < guards; i++) { int gdist = max(abs(guardX[i] - incX), abs(guardY[i] - incY)); dist = min(dist, gdist); } printf("%d\n", dist); } return 0; }