灯泡与影子(三分)
提交数: 86, 通过率: 53.49%, 平均分: 60.17
题目描述:
有一天,小明发现他的影子长度随着他在灯泡和墙壁之间走动时会发生变化,一个突发奇想在他的脑海里闪过,他现在想知道他来回走动,他的影子的最大长度是多少?
输入格式:
第一行包含一个整数T (T <= 100),表示测试数据的级数。
对于每组测试数据仅一行包含三个实数 H, h 和 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