#P2743. Mobile Computing
Mobile Computing
题目描述
在名为Yaen的神秘星球上,空间是二维的。星球上有许多美丽的石头,Yaen人喜欢收集它们。他们将石头带回家,制作成漂亮的悬挂艺术品来装饰他们的二维客厅。
在他们的二维世界中,悬挂艺术品的定义如下:
- 用一根绳子悬挂一块石头,或者
- 一根长度为的杆子,两端各悬挂一个子艺术品;杆子通过子艺术品的重心悬挂。当两个子艺术品的重量分别为和,且它们到重心的距离分别为和时,满足方程。
例如,如果你有三块重量分别为、和的石头,以下是一些可能的悬挂艺术品及其宽度:
给定石头的重量和房间的宽度,你的任务是设计一个尽可能宽的悬挂艺术品,满足以下两个条件:
- 使用所有的石头。
- 其宽度小于房间的宽度。
石头的宽度可以忽略不计。
在某些情况下,悬挂在杆子两端的两个子艺术品可能会重叠
(例如右图所示)。这样的悬挂艺术品是可以接受的。示例中的宽度为。
输入格式
输入的第一行给出数据集的数量。随后是相应数量的数据集。每个数据集的格式如下:
r
s
w1 ... ws
其中:
- 是一个十进制小数,表示房间的宽度,满足。
- 是石头的数量,假设。
- 是第块石头的重量,是一个整数,假设。
可以假设给定的石头无法制作出宽度在和之间的悬挂艺术品。
输出格式
对于每个数据集,输出一行包含一个十进制小数,表示满足条件的最大悬挂艺术品的宽度。如果没有任何悬挂艺术品满足要求,则输出。
输出行不应包含多余字符(如空格)。
答案的误差不应超过。可以输出任意多的小数位数,只要满足上述精度条件即可。
示例输入与输出
输入数据 1
5
1.3
3
1
2
1
1.4
3
1
2
1
2.0
3
1
2
1
1.59
4
2
1
1
3
1.7143
4
1
2
3
5
输出数据 1
-1
1.3333333333333335
1.6666666666666667
1.5833333333333335
1.7142857142857142
来源
Japan 2005