#1438. 圆柱体

圆柱体

Description

圆柱体(比如汽油桶)(半径为1英尺)堆叠在一个矩形容器中。上一层的每个圆柱体都搁在下一层的2个圆柱体之上。最底下一层的圆柱体搁在容器的底部,而且不能滚动,即最底层圆柱体的位置是固定的。每一层圆柱体的个数比下一层圆柱体的个数少1

问题是需要编写一个程序,计算最顶层圆柱体中心(距离最底层圆柱体中心)的位置。在计算过程中的中间结果需要使用double型数据的精度

Input Format

输入的第一行是一个十进制整数nProb,表示问题的个数 (1 <= nProb <= 1000)。接下来是nProb行输入数据。每一行输入数据首先是一个整数n,表示最底层有n个圆柱体,然后n个浮点数,给出了最底层n个圆柱体中心的x坐标,(y坐标都是1.0,因为底层的这些圆柱体都是都是位于容器的底部(y = 0.0)的。n的值是介于110(含)之间。相邻两个圆柱体的中心至少是2.02个圆柱体不会重叠),至多为3.4(这样第k层的圆柱体不会接触到第k – 2层的圆柱体)。

Output Format

每个问题的输出只有一行,首先是问题的序号(1...nProb),接着是一个冒号,空格,然后是最顶层圆柱体中心的x坐标(精确到小数点后4位有效数字),空格,最顶层圆柱体中心的y坐标(同样精确到小数点后4位有效数字)。注意:为了检验你的计算是否正确,可以提示你的是最顶层圆柱体中心的x坐标是最底层圆柱体中最左边和最右边圆柱体中心的x坐标的均值(之和的一半)。

5
4 1.0 4.4 7.8 11.2
1 1.0
6 1.0 3.0 5.0 7.0 9.0 11.0
10 1.0 3.0 5.0 7.0 9.0 11.0 13.0 15.0 17.0 20.4
5 1.0 4.4 7.8 11.2 14.6
1: 6.1000 4.1607
2: 1.0000 1.0000
3: 6.0000 9.6603
4: 10.7000 15.9100
5: 7.8000 5.2143

Hint

注意最好不要使用三角函数(使用三角函数可能会丢失精度而WA)。

Source

未分类