0718 入門三分

2021-08-21 13:05:11 字數 583 閱讀 6707

三分三分,顧名思義,將某個範圍[ l,r ]分成三份,再進行操作

與二分類似,不停的縮小範圍,直至找到答案

單峰函式求極值(備註1)

1.找到三分後的兩個點

2.兩個點中結果更優的那個點被稱為好點,另乙個為壞點。那麼根據單峰函式的性質,我們可以發現最優解一定存在於壞點和l或壞點和r之間(可以自己畫圖理解)

3.不停的重複1,2,直至找到最優解

具體細節看**

#include#include#include#include#includeusing namespace std;

const double eps=1e-10;

int n;

double l,r,a[20];

double cal(double x)

int main()

while(r-l>eps)

printf("%.5lf",l);//會自動四捨五入

return 0;

}

備註:

1.單峰函式就是乙個勾,或者乙個尖

2.所有涉及double等實數型別的比較,都要有eps

二分答案和三分入門

首先.我是乙個很菜很菜的萌新,所以這篇文章寫得很詳細,有很多我自己的口水話方便我理解,請各位謹慎食用qwq 以前在網上找過很多介紹二分的部落格,但都感覺對萌新不太友好,反正我當時連跳石頭都沒看懂,所以決定自己寫一篇!其中有我的想法,也借鑑了書裡的很多內容,感謝lyd。二分答案,顧名思義,就是對我們所...

hdu 3400 Line belt 三分套三分)

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

三分 三分求極值 HihoCoder 1142

描述 在之前的幾周中我們了解到二分法作為分治中最常見的方法,適用於單調函式,逼近求解某點的值。但當函式是凸形函式時,二分法就無法適用,這時就需要用到三分法。從三分法的名字中我們可以猜到,三分法是對於需要逼近的區間做三等分 week40 2.png 我們發現lm這個點比rm要低,那麼我們要找的最小點一...