Cho ~n~ con ếch ngồi ở trên một đĩa tròn khổng lồ được biểu diễn dưới dạng một mặt phẳng hai chiều, ban đầu con ếch thứ ~i~ ở vị trí có tọa độ là ~(x_i,y_i)~. Có thể có nhiều con ếch ở cùng vị trí trong một thời điểm.
Có ~m~ sự kiện sẽ lần lượt diễn ra, mỗi sự kiện thuộc một trong bốn dạng như sau:
~\texttt{cw}~: Xoay đĩa tròn theo chiều kim đồng hồ. Vị trí của các con ếch được xoay theo chiều kim đồng hồ một góc 90 độ quanh gốc tọa độ.
~\texttt{ccw}~: Xoay đĩa tròn ngược chiều kim đồng hồ. Vị trí của các con ếch được xoay ngược chiều kim đồng hồ một góc 90 độ quanh gốc tọa độ.
~\texttt{xflip k}~: Các con ếch nhảy sang vị trí đối xứng với vị trí ban đầu qua đường thẳng ~x=k~.
~\texttt{yflip k}~: Các con ếch nhảy sang vị trí đối xứng với vị trí ban đầu qua đường thẳng ~y=k~.
Cho ~q~ truy vấn, mỗi truy vấn gồm hai số ~a~ và ~b~, bạn hãy tìm vị trí của con ếch thứ ~a~ ngay sau sự kiện thứ ~b~.
Input
Dòng đầu gồm ba số nguyên ~n, m, q~ lần lượt là số lượng ếch, số lượng sự kiện và số lượng truy vấn ~(1 \leq n,m,q \leq 2 \times 10^5)~.
Dòng thứ ~i~ trong ~n~ dòng tiếp theo gồm hai số nguyên ~x_i~ và ~y_i~ mô tả vị trí ban đầu của con ếch thứ ~i~ ~(-10^9 \leq x_i, y_i \leq 10^9)~.
Dòng thứ ~i~ trong ~m~ dòng tiếp theo gồm một chuỗi kí tự ~\texttt{event}_i \in \{\texttt{cw, ccw, xflip, yflip}\}~. Nếu ~\texttt{event}_i \in \{\texttt{xflip, yflip}\}~ thì có thêm số nguyên ~k_i~ ~(-10^9 \leq k_i \leq 10^9)~.
Dòng thứ ~i~ trong ~q~ dòng tiếp theo gồm hai số nguyên ~a_i~ và ~b_i~ (~1 \le a_i \le n~, ~1 \le b_i \le m~) mô tả truy vấn thứ ~i~.
Các số hoặc chữ trên cùng một dòng cách nhau bởi dấu cách.
Output
Dòng thứ ~i~ trong ~q~ dòng gồm một số nguyên là câu trả lời cho truy vấn thứ ~i~ (thứ tự như trong phần input).
Scoring
Subtask | Điểm | Ràng buộc |
---|---|---|
~1~ | ~10\%~ | ~1 \leq n, m, q \leq 2\times 10^3~ |
~2~ | ~20\%~ | Các sự kiện chỉ gồm dạng ~\texttt{cw, ccw}~ |
~3~ | ~30\%~ | Các sự kiện chỉ gồm dạng ~\texttt{xflip, yflip}~ |
~4~ | ~40\%~ | Không có ràng buộc gì thêm |
Sample Input 1
3 5 9
3 1
5 3
9 5
cw
xflip 7
ccw
yflip 8
ccw
1 1
2 1
1 2
1 3
3 3
1 4
2 4
1 5
3 5
Sample Output 1
1 -3
3 -5
13 -3
3 13
9 9
3 3
5 5
-3 3
-7 9
Sample Input 2
5 10 10
9 7
3 6
10 4
1 4
8 9
cw
ccw
ccw
xflip 10
xflip 4
yflip 7
yflip 6
yflip 8
cw
ccw
2 1
4 5
5 3
1 3
3 9
4 8
2 2
2 9
2 4
5 1
Sample Output 2
6 -3
-16 1
-9 8
-7 9
8 16
-16 17
3 6
15 18
26 3
9 -8
Notes
Giải thích test ví dụ đầu tiên:
Vị trí ban đầu của ~3~ con ếch:
Sau thao tác đầu tiên, vị trí của ~3~ con ếch là:
Vị trí ếch ~1~ sau thao tác ~1~ là (~1, -3~) nên nên truy vấn đầu tiên (~1, 1~) trả ra đáp án là (~1, -3~). Tương tự đáp án của truy vấn thứ hai (~2, 1~) trả ra (~3, -5~).
Sau thao tác thứ hai, vị trí của ~3~ con ếch là:
Đáp án của truy vấn (~1, 2~) là (~13, -3~).
Sau thao tác thứ ba, vị trí của ~3~ con ếch là:
Đáp án của truy vấn (~1, 3~) là (~3, 13~).
Đáp án của truy vấn (~3, 3~) là (~9, 9~).
Sau thao tác thứ tư, vị trí của ~3~ con ếch là:
Đáp án của truy vấn (~1, 4~) là (~3, 3~).
Đáp án của truy vấn (~2, 4~) là (~5, 5~).
Sau thao tác thứ năm, vị trí của ~3~ con ếch là:
Đáp án của truy vấn (~1, 5~) là (~-3, 3~).
Đáp án của truy vấn (~3, 4~) là (~-7, 9~).
Comments