题目 1714

地壳运动

查看题解 ↗GitHub ↗如何评测
题号
1714
时间限制
6000 ms
内存限制
128 MB
标签
图论
来源
信息学奥赛一本通 · 高手训练篇·三、图论(高手训练)

【题目描述】

城市中建立了NN个应急避难所以躲避灾害,这些避难所从1~N1~N编号。此外有MM条道路连接这些避难所,所有避难所间均可通过这MM条道路直接或间接到达。路可以由若干个平行于xx或yy坐标轴的线段组成,所以避难所xix_i和yiy_i之间的道路可以用(ui,vi)(u_i,v_i)来表示,道路的长度为ui+viu_i+v_i。 由于地壳运动会导致地面拉伸或收缩,可用两个实数k1,k2k_1,k_2描述城市的伸缩程度,此时某条道路的实际长度变为ui×k1+vi×k2u_i × k_1+v_i × k_2。 有若干个独立的询问,每次询问给出k1k_1和k2k_2,政府都希望在此地壳运动前提下,以最小的花费维护其中一些道路,使得只用这些被维护的道路仍能使所有避难所间相互连通。因为花费与道路的实际总长成正比,所以你需要对每一次询问求出被维护道路的最短实际总长度。

【输入】

第一行三个整数N,M,QN,M,Q,分别表示避难所数量、道路数量、询问数量。 接下来MM行每行四个整数xi,yi,ui,vi。xi,yix_i,y_i,u_i,v_i。x_i,y_i表示道路连接的两个避难所编号,ui,viu_i,v_i意义如上文所述。 最后QQ行每行两个实数,表示每次询问的的k1k_1和k2k_2。

【输出】

输出Q行,每行一个实数,表示实际总长度,保留三位小数。

【输入样例】

文本
4 8 3
2 1 3 6
3 2 0 7
4 1 7 0
1 4 4 6
2 1 2 7
1 2 2 10
2 2 5 5
4 4 8 9
0.626436771146 0.472537839745
0.977631137354 0.190235819672
0.418883351791 0.221987861358

【输出样例】

文本
12.253
9.671
6.878

【提示】

【数据规模及约定】 对于30%的数据,N≤30,M≤3000,Q≤3000N≤30,M≤3000,Q≤3000; 对于另外30%的数据,N≤20,M≤25000,Q≤10000N≤20,M≤25000,Q≤10000; 对于100%的数据,N≤35,M≤25000,Q≤200000,1≤xi,yi≤N,0≤ui,vi≤106,k1,k2>0N≤35,M≤25000,Q≤200000,1≤x_i,y_i≤N,0≤u_i,v_i≤10^6,k_1,k_2>0。

数据下载

题目 1714 的公开数据

正在读取文件列表…

常用命令

题目 1714 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。