30125 - The Quest for El Dorad

有一个王国,包含 n 座城市和 m 条连接城市的双向铁路。第 i 条铁路由第 c_i 家铁路公司运营,铁路长度为 l_i

你希望从城市 1 开始在全国旅行。为此,你购买了 k 张火车票。第 i 张票可以用两个整数 a_ib_i 表示,意思是如果你使用这张票,你可以一次性连续乘坐若干条铁路,只要这些铁路都由公司 a_i 运营,且它们的总长度不超过 b_i。使用一张票时也可以选择停留在当前城市。你一次只能使用一张票,并且每张票只能使用一次。

你觉得决定使用票的顺序很麻烦,因此你决定按照票的给定顺序使用它们。更正式地说,你将执行 k 次操作。在第 i 次操作中,你可以选择停留在当前城市 u;或者选择一个不同的城市 v,使得存在一条从 uv 的路径,路径上的所有铁路都由公司 a_i 运营,且铁路总长度不超过 b_i,然后移动到城市 v

对于每个城市,判断是否有可能在使用完所有 k 张票后到达该城市。

输入

输入包含多个测试用例。第一行包含一个整数 T,表示测试用例的数量。对于每个测试用例:

第一行包含三个整数 nmk2 \le n \le 5 \times 10^51 \le m \le 5 \times 10^51 \le k \le 5 \times 10^5),分别表示城市数量、铁路数量和票的数量。

接下来的 m 行,第 i 行包含四个整数 u_iv_ic_il_i1 \le u_i, v_i \le nu_i \ne v_i1 \le c_i \le m1 \le l_i \le 10^9),表示第 i 条铁路连接城市 u_iv_i,由公司 c_i 运营,长度为 l_i。注意同一对城市之间可能存在多条铁路。

接下来的 k 行,第 i 行包含两个整数 a_ib_i1 \le a_i \le m1 \le b_i \le 10^9),表示第 i 张票:可以使用公司 a_i 运营的铁路,总长度不超过 b_i

保证所有测试用例的 nmk 之和均不超过 5 \times 10^5

输出

对于每个测试用例,输出一行,包含一个长度为 n 的字符串 s_1 s_2 \cdots s_n,其中每个字符为 01。如果使用这 k 张票可以从城市 1 到达城市 i,则 s_i = 1;否则 s_i = 0

样例

输入

2
5 6 4
1 2 1 30
2 3 1 50
2 5 5 50
3 4 6 10
2 4 5 30
2 5 1 40
1 70
6 100
5 40
1 30
3 1 1
2 3 1 10
1 100

输出

11011
100
时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题