hdu 5142 物理三分演算法

2021-07-16 08:28:59 字數 648 閱讀 1781

題意:在高為

h 的位置以速度

v丟擲一物體,求在最優角度丟擲的最遠水平距離。

解題思路:剛開始寫題時想過直接求公式,但是後來放棄了,你懂得。解法是直接三分丟擲去的角(0

,π) 。求出極大解,但是要注意結束三分的條件剛開始我是小於10−

4 跳出,但是精度不夠,要把條件改為10−

7 ac。

ac**:

#include 

#include

#include

#include

#include

#include

using

namespace

std;

#define ll long long

double h,v;

double f(double j)

int main()

while(fabs(leftt - rightt)>0.0000001)

///三分注意跳出條件

printf("%.2lf\n",f(leftt));

}return

0;}

hdu 3400 Line belt 三分套三分)

題意 在乙個二維空間中給出兩條線段ab,cd,線段ab,cd上的運動速度分別為p,q。在這兩條線段之外的空間上運動的速度為r。求從a到d的最短時間。思路 ps 在這種求解方法中,中間運用了比較多的除法,導致精度損失,所以再開方前加乙個eps,防止開方後的值比真實值小。include include ...

HDU 2298 三分 二分物理題 模板

題目 題意 二維面上給定目標座標和初速度,求在座標原點 0,0 發射出去能經過目標點的最小的角度。思路 寫出乙個高度關於角度的一元二次方程。看這個最大高度是否 y,判斷是否有解。這是乙個二次型凸函式。假如對稱軸為x,而且最大高度 y 即有解 0,x 這一段滿足二分單調性,找出函式值最接近y的角度即可...

三分查詢演算法

輸入 n個元素的公升序陣列 a 1 n 和元素x 輸出 如果x a j 1 j n,則輸出就,否則輸出 0.步驟 1 先把整個區間的 n 3的值 lmid n 3 left。2 再取右側區間的中間值 rmid lmid right,從而把區間分為三個小區間。3 我們a lmid 的值與 x進行比較,...