UVA915 Stack of Cylinders
题目描述
问题描述
假设你在一座山上放置了一些半径不同的圆柱体,使得它们堆叠在一起(如图所示)。
根据圆柱体的半径,其中的一组圆柱体连接起来可以形成一条连续的路径。在所示的范例中,(如图),圆柱2,3,6组成了一条路径,其中我们称圆柱2为这一路径的开头,圆柱6为这一路径的末尾。
定义此路径的封闭距离d为从路径的开头的左支撑点直到路径的末尾的最右端的点的距离。
现在给你一些圆柱体,你要求出这些堆叠起来的圆柱中组成一条连续路径的圆柱序列,并求出此路径的封闭距离。保证每一个圆柱体最多在左右两边各接触一个圆柱体。
输入格式
输入将包含几个测试用例,如下所述。
连续的测试用例将由空行分隔。
第一行包含一个整数NC,表示圆柱体的数目NC。
随后NC行,第k行为第k个圆柱的半径(整数或十进制小数格式)。
(圆柱的序列号从1开始)
注意:NC
输出格式
连续的测试用例将由空行分隔。
第一行包含一个十进制小数,表示路径的封闭距离。
第二行包含一个整数NP,表示构成路径的圆柱体个数。
此后NP行,以正确的顺序输出构成该路径的NP个圆柱体的序号。