灯泡与影子(三分)

提交数: 86, 通过率: 53.49%, 平均分: 60.17

题目描述:

有一天,小明发现他的影子长度随着他在灯泡和墙壁之间走动时会发生变化,一个突发奇想在他的脑海里闪过,他现在想知道他来回走动,他的影子的最大长度是多少?

1529821904667727175.png

输入格式:

第一行包含一个整数T (T <= 100),表示测试数据的级数。

对于每组测试数据仅一行包含三个实数 Hh 和 D。 H 是灯光的高度, h小明的身高,D是灯光和墙壁的水平距离三个数的范围都在 10-2 到 103之间 ,   H - h >= 10-2

输出格式:

共T行,每组测试数据占一行,表示影子的长度,保留三位小数。

样例输入:

3
2 1 0.5
2 0.5 3
4 3 4

样例输出:

1.000
0.750
4.000

提示:

三分的模板:

double l = 0, r = 1e9;
while (r-l >= 1e-3) {
	double m1 = l+(r-l)/3,  m2 = r-(r-l)/3;
	if (  f(m1) < f(m2) )  l = m1;
	else r = m2;
}

 

时间限制: 1000ms
空间限制: 256MB