題目:
題目大意:給出a、b、c、d四點座標,在ab上速度為p,cd上速度為q, 其他地方速度為r。求從a到d的最短時間
思路:兩個三分巢狀,ab線段三分,內層巢狀cd線段內的三分
提交情況: wa 1次, ac 1次
總結:內層的三分時,每次都要重新賦兩端點的值為c、d的值,因為前一次搜尋結束後,端點值已經改變。就這樣wa了一次……
ac code:
view code
1#include
<
stdio.h
>
2#include
<
stdlib.h
>
3#include
<
string
.h>
4#include
<
math.h
>56
7#define
eps 1e-689
double
ax, ay, bx, by, cx, cy, dx, dy;
10double
p, q, r;
1112
double
lmidx, lmidy, lmidmidx, lmidmidy, rmidx, rmidy, rmidmidx, rmidmidy;
13double
lax, lay, lbx, lby, rcx, rcy, rdx, rdy;
1415
void
insert()
2021
double
time(
double
x1,
double
y1,
double
x2,
double
y2,
double
v) 27
2829
double
find_r(
double
lx,
double
ly)
43else47}
48return
timem;49}
5051
double
find_l()
64else68}
69return
time_m;70}
7172
intmain()
79return0;
80}
HDU 3400 Line belt 三分套娃
我們假定在 a,b 上選取點 e 在 c,d 上選取點 f 我們的移動路徑是 a e f d 當我們確定 e 點時,不難發現 dis e f f d 是乙個凹函式,具有極小值。當我們確定 f 點時不難發現 dis a e e f 也是乙個凹函式,具有極小值。這兩段函式連線起來,不難發現也是乙個凹函式...
hdu 3400 Line belt 三分套三分)
題意 在乙個二維空間中給出兩條線段ab,cd,線段ab,cd上的運動速度分別為p,q。在這兩條線段之外的空間上運動的速度為r。求從a到d的最短時間。思路 ps 在這種求解方法中,中間運用了比較多的除法,導致精度損失,所以再開方前加乙個eps,防止開方後的值比真實值小。include include ...
hdu 3400 悲劇的三分
題意 就是給你兩條線段ab cd 乙個人在ab上跑速度p,在cd上跑q,在其他地方跑速度是r。問你從a到d最少的時間是好多。解法。比賽時候看題就想起之前hs教我的三分,結果寫了全場的,都沒有過的。哎太挫了。正確解法就是 對ab上三分乙個e點,在cd上三分乙個點f,然後三分完了之後就是最後的結果了的。...