ZJNU 1262電燈泡(三分題)

2021-06-28 18:39:14 字數 1007 閱讀 6387

description

小明的房間布置十分簡單,只有乙個節能燈泡,非常的明亮。每天晚上,他總是在自己的房間裡來回踱步,想著如何能賺到更多的錢。有一天,他發現他在房間裡的影子長度也隨著他的步伐不斷變化。突然,他腦中閃過乙個念頭,影子的最大長度(包括地面和牆壁上的陰影)是多少呢?

input

多組測試資料。

第一行乙個整數t(t<=10)表示測試資料個數。

每組三個浮點數,h,h和d,分別如圖所示。

(10^-2《所有數值<10^3,h-h>=10^-2)

分別用乙個空格分開。

output

輸出為最長影子的長度。

sample input

3

2 1 0.5

2 0.5 3

4 3 4

sample output

1.000

0.750

4.000

以前做這道題的時候,寫出了式子,但是一直都算不出來。現在才知道這是要用三分法做的。

因為這個函式不是單增或單減的;

做法:首先,先根據三角形相似寫出式子,然後再(0,h)中進行查詢。

#include#includeusing namespace std;

double h,h,d,l;

double equ(double x)

double fd(double l,double r)

return equ(mid)>equ(mmid)? equ(mid):equ(mmid);

}int main()

}

我一開始不知道三分的left點和right點,我還以為只要從0到最大值就好了;但是這樣是不對的,因為如果每個點都在這個範圍內的話,那麼最大值肯定不會再那個範圍內;

比如說x就會超過它的最大值h;

所以三分的範圍就是(0,h);

最後三分之後,返回的值是兩者中的最大值,因為它要求的是最長影子長度。

12 6(解構賦值)

物件的解構賦值用於從乙個物件取值,相當於將目標物件自身的所有可遍歷的 enumerable 但尚未被讀取的屬性,分配到指定的物件上面。所有的鍵和它們的值,都會拷貝到新物件上面。let x 1 y 2 z 由於解構賦值要求等號右邊是乙個物件,所以 如果等號右邊是undefined或null,就會報錯,...

1 26學習總結

把一顆色子搖6000次,統計每一面出現的次數 import random fs 0 6 列表的重複 for in range 6000 face random.randint 1,6 fs face 1 1print fs for i in range 1 7 print f 點出現了次 列表的生成...

1 26(測試總結)

1.軟體測試的目的與原則是什麼?目的 發現軟體的缺陷與漏洞,對軟體的質量進行評估,提公升軟體質量。原則 所有的軟體測試都應追溯到使用者需求。盡早地和不斷地進行軟體測試 完全測試是不可能的,測試需要終止。充分注意測試中的群集現象。程式設計師應避免檢查自己的程式。盡量避免測試的隨意性 2,測試人員在測試...