SP14981 UOFTBF - Light Cycling

题目描述

你被一个投影仪吸进了父亲的秘密计算机,发现自己身处奇妙的电子世界!在这里,你全天都在玩游戏,如果输掉了,就会 "死亡"。 其中一个游戏里,你和对手驾驶光轮摩托在平面的网格上奔驰,所过之处会留下不可抹去的光迹。这个网格可以视为一个笛卡尔坐标平面,并被不可穿越的矩形墙壁包围,保证每个光轮摩托的 $x$ 坐标始终在 $1$ 和 $10^{12}$ 之间,而 $y$ 坐标在 $1$ 和 $10^6$ 之间(包括边界)。光轮摩托总是沿着网格线移动,每秒可以移动1个方格。 比赛持续 $S$($1 \leq S \leq 10^{100}$)秒。你从坐标 $(X_A, Y_A)$ 出发,按照 $N_A$($1 \leq N_A \leq 10^5$)条指令移动。每条指令由字符 $D_{Ai}$(“U”、“D”、“L”、“R”分别代表上、下、左、右)和整数 $L_{Ai}$ 表示,表示向指定方向移动 $L_{Ai}$ 个方格。你的对手从坐标 $(X_B, Y_B)$ 出发,按照 $N_B$ 条指令移动,其第 $i$ 条指令由 $L_{Bi}$ 和 $D_{Bi}$ 组成。参与者的指令绝不会把他们带出墙壁的边界,并且每个玩家执行所有指令恰好需要 $S$ 秒。此外,任何一条指令的方向都不会与前一条相同或相反。最后,若某个网格点被多个路径经过,保证有一条路径垂直穿过,而另一条水平穿过(起点和终点不在此列)。 如果两个光轮摩托同时到达同一个网格点,或者光轮摩托撞到已有的光迹(即经过的任何网格点),即发生碰撞。这是练习赛,所以碰撞仅用来统计次数,并不影响比赛结果。在 $T$($1 \leq T \leq 20$)个情景中,你需要统计每场比赛内的碰撞总次数。

输入格式

第一行: 一个整数,$T$ 对于每个情景: - 第一行:一个整数,$S$ - 第二行:三个整数,$X_A$、$Y_A$ 和 $N_A$ - 接下来 $N_A$ 行:每行由 $D_{Ai}$ 和 $L_{Ai}$ 组成,表示每条指令 - 接下来一行:三个整数,$X_B$、$Y_B$ 和 $N_B$ - 接下来 $N_B$ 行:每行由 $D_{Bi}$ 和 $L_{Bi}$ 组成,表示每条指令

输出格式

对于每个情景,输出一个整数,表示比赛中发生的总碰撞次数。

说明/提示

- $$1 \leq T \leq 20$$ - $$1 \leq S \leq 10^{100}$$ - $$1 \leq X_A, X_B \leq 10^{12}$$ - $$1 \leq Y_A, Y_B \leq 10^6$$ - $$1 \leq N_A, N_B \leq 10^5$$ **本翻译由 AI 自动生成**