#abc211f. [abc211_f]Rectilinear Polygons

[abc211_f]Rectilinear Polygons

问题描述

我们在 xyxy 平面上有 NN 个多边形。
这些多边形的每条边都与 xx 轴或 yy 轴平行,并且每个内角为 9090 度或 270270 度。所有这些多边形都是简单多边形。
ii 个多边形有 MiM_i 个角,第 jj 个角的坐标为 (xi,j,yi,j)(x_{i, j}, y_{i, j})
该多边形的边是连接第 jj 个角和 (j+1)(j+1) 个角的线段。(假设 (Mi+1)(M_i+1) 个角是第一个角。)

当...

对于它的任意两条不相邻的边,它们不相交(不交叉也不触碰)。

你会得到 QQ 个查询。对于每个 i=1,2,,Qi = 1, 2, \dots, Q,第 ii 个查询如下:

  • NN 个多边形中,有多少个多边形包含点 (Xi+0.5,Yi+0.5)(X_i + 0.5, Y_i + 0.5)

约束条件

  • 1N1051 \leq N \leq 10^5
  • 4Mi1054 \leq M_i \leq 10^5
  • 每个 MiM_i 都是偶数。
  • iMi4×105\sum_i M_i \leq 4 \times 10^5
  • 0xi,j,yi,j1050 \leq x_{i, j}, y_{i, j} \leq 10^5
  • jkj \neq k,则 (xi,j,yi,j)(xi,k,yi,k)(x_{i, j}, y_{i, j}) \neq (x_{i, k}, y_{i, k})
  • 对于 j=1,3,,Mi1j = 1, 3, \dots, M_i-1,有 xi,j=xi,j+1x_{i, j} = x_{i, j+1}
  • 对于 j=2,4,,Mij = 2, 4, \dots, M_i,有 yi,j=yi,j+1y_{i, j} = y_{i, j+1}。(假设 yi,Mi+1=yi,1y_{i, M_i +1} = y_{i, 1}。)
  • 给定的多边形都是简单多边形。
  • 1Q1051 \leq Q \leq 10^5
  • 0Xi,Yi<1050 \leq X_i, Y_i \lt 10^5
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入中给出:

NN M1M_1 x1,1x_{1, 1} y1,1y_{1, 1} x1,2x_{1, 2} y1,2y_{1, 2} \dots x1,M1x_{1, M_1} y1,M1y_{1, M_1} M2M_2 x2,1x_{2, 1} y2,1y_{2, 1} x2,2x_{2, 2} y2,2y_{2, 2} \dots x2,M2x_{2, M_2} y2,M2y_{2, M_2} \vdots MNM_N xN,1x_{N, 1} yN,1y_{N, 1} xN,2x_{N, 2} yN,2y_{N, 2} \dots xN,MNx_{N, M_N} yN,MNy_{N, M_N} QQ X1X_1 Y1Y_1 X2X_2 Y2Y_2 \vdots XQX_Q YQY_Q

输出

输出 QQ 行。
ii 行应包含第 ii 个查询的答案。


示例输入1

3
4
1 2 1 4 3 4 3 2
4
2 5 2 3 5 3 5 5
4
5 6 5 5 3 5 3 6
3
1 4
2 3
4 5

示例输出1

0
2
1


请注意,不同的多边形可能会相交或接触。


示例输入2

2
4
12 3 12 5 0 5 0 3
12
1 1 1 9 10 9 10 0 4 0 4 6 6 6 6 2 8 2 8 7 2 7 2 1
4
2 6
4 4
6 3
1 8

示例输出2

0
2
1
1


虽然多边形是简单的,但它们可能不是凸多边形。