#LQ0603. 灾后重建
灾后重建
题目描述
Pear 市一共有 N(N≤50000个居民点,居民点之间有 M(M≤200000)条双向道路相连。这些居民点两两之间都可以通过双向道路到达。这种情况一直持续到最近,一次严重的地震毁坏了全部 M 条道路。
震后,Pear 打算修复其中一些道路,修理第 i 条道路需要 Pi 的时间。不过,Pear 并不打算让全部的点连通,而是选择一些标号特殊的点让他们连通。
Pear 有 Q(Q≤50000) 次询问,每次询问,他会选择所有编号在 [l,r]之间,并且编号mod K = C的点,修理一些路使得它们连通。由于所有道路的修理可以同时开工,所以完成修理的时间取决于花费时间最长的一条路,即涉及到的道路中Pi 的最大值。
你能帮助 Pear 计算出每次询问时需要花费的最少时间么?这里询问是独立的,也就是上一个询问里的修理计划并没有付诸行动。
输入描述
第一行三个正整数 N、M、Q,含义如题面所述。
接下来 M 行,每行三个正整数 Xi、Yi、Pi,表示一条连接 Xi 和 Yi 的双向道路,修复需要 Pi 的时间。可能有自环,可能有重边。
接下来 Q 行,每行四个正整数 Li、Ri、Ki、Ci,表示这次询问的点是 [Li,Ri] 区间中所有编号 mod Ki=Ci 的点。保证参与询问的点至少有两个。
其中,N≤50000,M≤2×105,Q≤50000,Pi≤106。Li、Ri、Ki、Ci均在 [1,N] 范围内,Ci 在[0,对应询问的 Ki )范围内。
例如:
输入:
输出描述
输出 Q 行,每行一个正整数表示对应询问的答案。
输入输出样例
示例
输入
7 10 4
1 3 10
2 6 9
4 1 5
3 7 4
3 6 9
1 5 8
2 7 4
3 2 10
1 7 6
7 6 9
1 7 1 0
1 7 3 1
2 5 1 0
3 7 2 1
输出
9
6
8
8