#CSP1136. 传送 (teleport)

    ID: 4507 Type: Default File IO: teleport 1000ms 256MiB Tried: 12 Accepted: 2 Difficulty: 10 Uploaded By: Tags>CSP-S模拟暑期集训

传送 (teleport)

题目描述

给定二维平面上有 NN 个点。第 ii 个点位于 (Xi,Yi)(X_i, Y_i)。它们之间有 MM 条双向隧道。第 jj 条双向隧道连接 UjU_jVjV_j 两点,从隧道的一端移动到另一端需要 WjW_j 个单位时间。

旅行家有两种旅行方式:通过隧道,或是传送。旅行家可以用 min(XiXj,YiYj)\min(|X_i - X_j|, |Y_i - Y_j|) 单位的时间从点 ii 传送到点 jj。在这里,x|x| 表示 xx 的绝对值。

请你找出从点 11 旅行到所有其他点的最短时间。

输入格式

teleport.in 文件读入数据。

第一行输入包含两个整数:N,MN, M

接下来的 NN 行中,第 ii 行包含两个整数:Xi,YiX_i, Y_i,描述第 ii 个点。

接下来的 MM 行中,第 jj 行包含三个整数:Uj,Vj,WjU_j, V_j, W_j,描述第 jj 条双向隧道。

输出格式

输出到 teleport.out 文件。

输出一行 N1N - 1 个整数,其中第 ii 个整数是从点 11 旅行到点 i+1i + 1 所需的最短时间。

样例

5 4
1 1
4 6
3 4
4 3
6 6
1 2 2
1 3 1
3 4 1
4 5 5
2 1 2 2

样例 2

点击链接 ex_teleport2.inex_teleport2.out 下载大样例 2 的输入数据和输出数据。

数据范围

对于所有测试数据,

2N2×1052 \leq N \leq 2 \times 10^5

0M2×1050 \leq M \leq 2 \times 10^5

对于所有 1iN1 \leq i \leq N1Xi,Yi1091 \leq X_i, Y_i \leq 10^9

对于所有 iji \neq j(Xi,Yi)(Xj,Yj)(X_i, Y_i) \neq (X_j, Y_j)

对于所有 1jM1 \leq j \leq M1UjVjN1 \leq U_j \neq V_j \leq N

对于所有 1jM1 \leq j \leq M1Wj1091 \leq W_j \leq 10^9

子任务 分数 附加约束条件
11 1212 M=0M = 0,对于所有 1iN1 \leq i \leq NXi=YiX_i = Y_i
22 2828 N1000N \leq 1000
33 2323 对于所有 1iN1 \leq i \leq NXi=YiX_i = Y_i
44 3737 无附加限制