luogu#P16397. [ECUSTPC 2026 Spring] 右灯左行
[ECUSTPC 2026 Spring] 右灯左行
背景
:::epigraph 的冲突, :::
题目描述
本题和试题 D 左灯右行共用相同的背景,两道题之间有较大的关系,建议在尝试其中一题前首先阅读另一题的文本。
这不是一道交互题。
小 T 面对 T 城的地铁图犯了难……
具体而言,这座城市在 E 河两岸,北岸有 个地铁站点 ,南岸有 个地铁站点 。
T 城总共有 条地铁线路,每条线路都是环线,其中第 条环线连接的地铁站是 ,但这些地铁环线都是单向运行的,可能是 $N_i \leftarrow N_{i+1} \leftarrow S_{i+1} \leftarrow S_i \leftarrow N_i$ 也可能是 。
每条环线都有一个价目表 ,分别表示这 4 个相邻站(, , 和 )之间坐一站地铁移动的价格,注意坐一站地铁的方向由地铁的运行方向而定,可能是 也可能是 。
高兴的是,时空白洞吐出了价目表上这些环线的运行方向和价格,大 K 准备求助小 T 来得到一些通过地铁移动的价格。
大 K 会告诉小 T 这些环线的运行方向和价目表,随后小 T 需要回答 个问题:
- 地铁站 (可以是 也可以是 ,下略)到地铁站 坐地铁,在给定的地铁价目表下,至少需要支付多少地铁费用?
- 若不同环线连接同一对相邻站,则这些边同时存在并且都可以使用。一次旅行的费用为所经过边权之和,站点间换乘不额外收费。
请帮助小 T 解决这个问题。
输入格式
第一行输入一个整数 ,表示测试数据的数量。
每组测试数据第一行输入两个整数 和 ,表示参数和询问数量,其中地铁站共 座,环线共 条。
随后输入 行,其中第 行输入 4 个整数 $u_i, d_i, l_i, r_i \ (0 \le u_i, d_i, l_i, r_i \le 10^9)$,分别表示第 条环线上 , , 和 这四个相邻站之间的移动价格。
随后输入一行一个长度为 的字符串 ,其中第 个字符 ,若 则表示第 条环线的方向为 $N_i \leftarrow N_{i+1} \leftarrow S_{i+1} \leftarrow S_i \leftarrow N_i$,若 则表示第 条环线的方向为 。
随后输入 行每行输入 4 个元素 ,$(S_x, S_y \in \{\text{N}, \text{S}\}, id_x, id_y \in \{m \in \mathbb{N} : 1 \le m \le n\})$,表示大 K 询问小 T 位于 岸的第 个地铁站 到位于 岸的第 个地铁站 之间至少需要支付多少地铁费用。
保证所有测试数据输入中的 , 。
输出格式
每组测试数据输出 行,第 行输出一个整数 表示小 T 收到的第 个询问的答案,也即 到 至少需要支付多少地铁费用。
3
3 5
10 3 1 2
10 10 1 1
OI
N 1 N 2
N 2 N 3
N 2 S 2
S 2 N 2
N 1 N 1
6 1
5 1 7 3
2 6 3 4
6 8 1 7
10 0 7 8
4 5 4 9
IOIOI
N 4 S 4
6 1
4 5 7 6
5 0 9 1
1 5 1 5
10 4 7 1
2 1 3 3
OIOIO
S 6 S 4
10
12
1
14
0
14
17
提示
样例 1 解释
:::align{center}
:::
上面的图展示了第 1 组测试数据中地铁的运行方向和价目表。