AT_abc189_e [ABC189E] Rotate and Flip

题目描述

给出 $N$ 个点,以及每个点得坐标 $(x_i,y_i)$,给出 $M$ 次操作,操作如下: - 第一种操作:将所有点绕原点 $(0,0)$ 顺时针旋转 $90$ 度。 - 第二种操作:将所有点绕原点 $(0,0)$ 逆时针旋转 $90$ 度。 - 第三种操作:以 $x=p$ 为对称轴,将所有的点对称过去。 - 第四种操作:以 $y=p$ 为对称轴,将所有的点对称过去。 接着给出 $Q$ 组询问,每次询问在某次操作过后某个点的坐标。

输入格式

第一行输入 $N$,表示 $N$ 个点。 接下来 $N$ 行,每行输入 $x_i,y_i$,表示第 $i$ 个点的坐标。 第 $N+2$ 行输入 $M$,表示操作次数。 接下来 $M$ 行,每行首先输入 $opt_i$,表示执行第 $opt_i$ 种操作。如果 $opt_i=3$ 或者 $opt_i=4$,再输入一个数字 $p$,表示一条直线。 第 $N+M+3$ 行输入 $Q$,表示询问个数。 接下来 $Q$ 行,每行两个数字 $A_i,B_i$,表示询问在第 $A_i$ 次操作过后第 $B_i$ 个点的坐标。特别的,$A_i=0$ 表示询问初始的坐标。

输出格式

输出 $Q$ 行,每行输出对于一次询问的答案。

说明/提示

### 制約 - 入力は全て整数 - $ 1\ \leq\ N\ \leq\ 2\times\ 10^5 $ - $ 1\ \leq\ M\ \leq\ 2\times\ 10^5 $ - $ 1\ \leq\ Q\ \leq\ 2\times\ 10^5 $ - $ -10^9\ \leq\ X_i,Y_i\ \leq\ 10^9 $ - $ \mathrm{op}_i $ は $ 4 $ つの操作の種類のいずれかの入力形式に従う - `3 p` 及び `4 p` の操作において $ -10^9\ \leq\ p\ \leq\ 10^9 $ - $ 0\ \leq\ A_i\ \leq\ M $ - $ 1\ \leq\ B_i\ \leq\ N $ ### Sample Explanation 1 最初、唯一の駒である駒 $ 1 $ は $ (1,2) $ に置かれています。各操作により駒 $ 1 $ の位置は $ (1,2)\to(2,-1)\to(4,-1)\to(1,4)\to(1,0) $ と変化します。