。。。去loj,上面有数据
by zhengzha @ 2018-12-07 13:51:45
~~以身相许太棒了~~
by 2019_nCoV @ 2018-12-07 13:52:51
~~以身相许,可以的~~
by Konjaku_百分百 @ 2018-12-07 13:54:48
@[地狱废龙](/space/show?uid=105281) 我死也不用结构体了嘤嘤嘤 $AC$ 了
```
#include<bits/stdc++.h>
#define N 5010
using namespace std;
/*struct node{double x,y,time;}a[N];
struct nod2{double x,y,time;}b[N];*/
double Ax,Ay,Bx,By,Cx,Cy,Dx,Dy,P,Q,R,xx,yy;
double ans=1e10;
double ax[N],ay[N],bx[N],by[N],at[N],bt[N];
double sqr(double x){return x*x;}
double dis(int i,int j)//两点间距离公式
{
//return sqrt(sqr(a[i].x-b[j].x)+sqr(a[i].y-b[j].y));
return sqrt(sqr(ax[i]-bx[j])+sqr(ay[i]-by[j]));
}
int main()
{
cin>>Ax>>Ay>>Bx>>By>>Cx>>Cy>>Dx>>Dy>>P>>Q>>R;
xx=(Bx-Ax)/N,yy=(By-Ay)/N;//把第一条线段平均拆成5000个点
for(int i=0;i<=N;i++)
{
ax[i]=Ax+xx*i;ay[i]=Ay+yy*i;//第一条顺着走
at[i]=sqrt(sqr(xx*i)+sqr(yy*i))/P;//时间=路程/速度
}
xx=(Dx-Cx)/N,yy=(Dy-Cy)/N;//把第二条线段平均拆成5000个点
for(int i=0;i<=N;i++)
{
bx[i]=Dx-xx*i;by[i]=Dy-yy*i;//第二条反着走
bt[i]=sqrt(sqr(xx*i)+sqr(yy*i))/Q;//时间=路程/速度
}
for(int i=0;i<=N;i++)
for(int j=0;j<=N;j++) ans=min(ans,at[i]+bt[j]+dis(i,j)/R);
//比较是直走还是去另一条传送带所需时间更短
printf("%.2lf",ans);
return 0;
}
```
by 打伞的大姐姐 @ 2018-12-07 13:59:48
~~hhh~~
by chest_dick @ 2018-12-07 14:07:56
~~233~~
by durex_com @ 2018-12-07 14:43:50