三分求極值

2021-06-29 16:42:31 字數 782 閱讀 3951

時間限制:

10000ms

單點時限:

1000ms

記憶體限制:

256mb 描述

這一次我們就簡單一點了,題目在此:

在直角座標系中有一條拋物線y=ax^2+bx+c和乙個點p(x,y),求點p到拋物線的最短距離d。

輸入第1行:5個整數a,b,c,x,y。前三個數構成拋物線的引數,後兩個數x,y表示p點座標。-200≤a,b,c,x,y≤200

輸出第1行:1個實數d,保留3位小數(四捨五入)

樣例輸入

2 8 2 -2 6
樣例輸出

2.437#include #include double a , b , c ;

double x,y;

double cal(double xx)

int main()

{ while(~scanf("%lf%lf%lf%lf%lf",&a,&b,&c,&x,&y))

{ double left = -200,right = 200;

while(fabs(right - left)>1e-9)

{ double mid = (right + left)/2 ;

double midmid = (right + mid) / 2 ;

if(cal(mid)

三分求極值

題目傳送 hihocoder 1142 三分 三分求極值 二分適用於單調函式,對於需要逼近的區間做二等分,來求解某點的值等。三分適用於凸形函式,對於需要逼近的區間做三等分。ac include include include include include include include inclu...

(求極值)三分模板

三分求極值法 如果要求極值,二分法早就失去了他的意義了。不過還是可以用三分法來實現的,就是二分中再來二分。比如我們定義了l和r,m l r 2,mm mid r 2 如果mid靠近極值點,則r mm 否則就是mm靠近極值點,則l m 這樣的話,極值還是可以求的 include include inc...

三分查詢求極值

我們都知道 二分查詢 適用於單調函式中逼近求解某點的值。如果遇到凸性或凹形函式時,可以用三分查詢求那個凸點或凹點。下面的方法應該是三分查詢的乙個變形。如圖所示,已知左右端點l r,要求找到白點的位置。思路 通過不斷縮小 l,r 的範圍,無限逼近白點。做法 先取 l,r 的中點 mid,再取 mid,...