#P2130. Jogging
Jogging
本题没有可用的提交语言。
问题描述
今天是2390年11月1日星期日,Eddy刚刚当选世界议会议员。虽然这份工作非常有趣且责任重大,但Eddy面临一个难题:他酷爱体育运动,特别是慢跑。自小以来,他每天都坚持至少慢跑30分钟。现在作为议员,他的空闲时间将比当老师时更少,如何安排慢跑时间?
Eddy决定在上班途中慢跑。议会大厦离他家相当远,因此他计划结合使用公共交通工具和慢跑。在这个首都,唯一的公共交通是移动步道系统。每条步道线路由两条方向相反、速度相同(v1>0)的直线步道组成。这些步道很长且相对狭窄,因此在本题中可以视为平面上无限延伸的直线。每条步道有两个参数Ti+和Ti-,分别表示上下步道所需时间。注意:穿过步道不需要额外时间,但在交叉点从第i条步道换到第j条步道需要Ti-+Tj+秒。
Eddy希望在步道上也能慢跑,因此他在步道上的移动速度为v1+v2,其中v2>0是Eddy在静止地面上的慢跑速度。
现在需要你找出从Eddy家到议会大厦的最短时间路线。这条路线可以由多个路段组成,其中某些路段可以位于现有步道上。
输入格式
第一行:整数N(0≤N≤50),表示城市中移动步道对数 第二行:6个实数x1,y1,x2,y2,v1,v2,表示家和议会大厦的坐标,以及步道速度和Eddy的慢跑速度 接下来N行:每行6个实数xi1,yi1,xi2,yi2,Ti+,Ti-,描述一条步道(两点确定直线)及其上下时间 所有坐标绝对值不超过10000,速度v1,v2范围1到100 所有步道位于不同直线上,家和议会大厦不在任何步道上
输出格式
第一行:实数T,表示最短时间(保留6位小数) 第二行:整数M(0<M≤300),表示最优路径的段数 随后M行:每行一个整数kj(0表示不使用步道)和该段终点坐标Xj,Yj(保留6位小数)
示例分析
输入样例1:
2
-100 -100 200 100 2.92893219 7.07106781
0 0 1 0 0 0
2000 0 2000 1 0 0
输出样例1:
50.000000
3
0 0.000000 0.000000
1 100.000000 0.000000
0 200.000000 100.000000