传送带

BZOJ1857:[SCOI2010]传送带——题解

只谈情不闲聊 提交于 2020-01-16 23:03:12
http://www.lydsy.com/JudgeOnline/problem.php?id=1857 Description 在一个2维平面上有两条传送带,每一条传送带可以看成是一条线段。两条传送带分别为线段AB和线段CD。lxhgww在AB上的移动速度为P,在CD上的移动速度为Q,在平面上的移动速度R。现在lxhgww想从A点走到D点,他想知道最少需要走多长时间 Input 输入数据第一行是4个整数,表示A和B的坐标,分别为Ax,Ay,Bx,By 第二行是4个整数,表示C和D的坐标,分别为Cx,Cy,Dx,Dy 第三行是3个整数,分别是P,Q,R Output 输出数据为一行,表示lxhgww从A点走到D点的最短时间,保留到小数点后2位 Sample Input 0 0 0 100 100 0 100 100 2 2 1 Sample Output 136.60 HINT 对于100%的数据,1<= Ax,Ay,Bx,By,Cx,Cy,Dx,Dy<=1000 1<=P,Q,R<=10 —————————————————————————————— 首先我们取AB一点E,CD一点F,则我们跑了AE+EF+FD。 考虑将其中一个点固定住,那么显然对于另一个点我们三分即可求出这个店的位置(显然该点有最小值,他的左右两点都比他大,所以为单峰函数)。 那么对于最开始的点

[SCOI2010]传送带

一世执手 提交于 2020-01-16 22:48:58
Description 在一个2维平面上有两条传送带,每一条传送带可以看成是一条线段。两条传送带分别为线段AB和线段CD。lxhgww在AB上的移动速度为P,在CD上的移动速度为Q,在平面上的移动速度R。现在lxhgww想从A点走到D点,他想知道最少需要走多长时间 Input 输入数据第一行是4个整数,表示A和B的坐标,分别为Ax,Ay,Bx,By 第二行是4个整数,表示C和D的坐标,分别为Cx,Cy,Dx,Dy 第三行是3个整数,分别是P,Q,R Output 输出数据为一行,表示lxhgww从A点走到D点的最短时间,保留到小数点后2位 Sample Input 0 0 0 100 100 0 100 100 2 2 1 Sample Output 136.60 HINT 对于100%的数据,1<= Ax,Ay,Bx,By,Cx,Cy,Dx,Dy<=1000 1<=P,Q,R<=10 先三分离开AB的点p,再三分进入CD的点q 两个都是单峰函数 证明可以用导数 zyys 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<cmath> 5 #include<algorithm> 6 using namespace std; 7 double Ax,Ay,Bx,By,Cx,Cy,Dx,Dy,P