#abc189e. [abc189_e]Rotate and Flip

[abc189_e]Rotate and Flip

题目描述

在二维平面上有 NN 个物体。第 ii 个物体的坐标是 (Xi,Yi)(X_i,Y_i)。可以在以下四种操作中选择进行 MM 次操作:123 p4 p。其中,操作的具体格式如下:

  • 1:将每个物体顺时针旋转 9090 度;
  • 2:将每个物体逆时针旋转 9090 度;
  • 3 p:将每个物体以关于直线 x=px=p 的对称点为中心进行对称移动;
  • 4 p:将每个物体以关于直线 y=py=p 的对称点为中心进行对称移动。

给定 QQ 个查询。在第 ii 个查询中,给定两个整数 AiA_iBiB_i,打印出第 AiA_i 次操作后物体 BiB_i 的坐标。这里,我们认为第 11 次操作之前的瞬间是“第 00 次操作”之后的瞬间。

约束条件

  • 输入中的所有值都是整数。
  • 1N2×1051 \leq N \leq 2\times 10^5
  • 1M2×1051 \leq M \leq 2\times 10^5
  • 1Q2×1051 \leq Q \leq 2\times 10^5
  • 109Xi,Yi109-10^9 \leq X_i,Y_i \leq 10^9
  • 操作 opi\mathrm{op}_i 的格式属于四种操作之一。
  • 在形如 3 p4 p 的操作中,109p109-10^9 \leq p \leq 10^9
  • 0AiM0 \leq A_i \leq M
  • 1BiN1 \leq B_i \leq N

输入

从标准输入读入数据,输入格式如下:

NN X1X_1 Y1Y_1 \vdots XNX_N YNY_N MM op1\mathrm{op}_1 \vdots opM\mathrm{op}_M QQ A1A_1 B1B_1 \vdots AQA_Q BQB_Q

输出

打印每个查询的响应,每行一个查询结果:以这个顺序打印 xx 坐标和 yy 坐标,中间用空格分隔。


示例输入 1

1
1 2
4
1
3 3
2
4 2
5
0 1
1 1
2 1
3 1
4 1

示例输出 1

1 2
2 -1
4 -1
1 4
1 0

最初,唯一的物体 - 物体 11 - 的坐标是 (1,2)(1, 2)。每次操作后物体的坐标变化如下:(1,2)(2,1)(4,1)(1,4)(1,0)(1,2) \to (2,-1) \to (4,-1) \to (1,4) \to (1,0)


示例输入 2

2
1000000000 0
0 1000000000
4
3 -1000000000
4 -1000000000
3 1000000000
4 1000000000
2
4 1
4 2

示例输出 2

5000000000 4000000000
4000000000 5000000000