2493: 望远镜
内存限制:256 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:1
解决:1
题目描述
NASA准备将一枚高精度望远镜发射到地球轨道以观测遥远的天文现象。这枚望远镜要求异常精确,任何小小的干扰都是不允许的。然而穿过望远镜的高速宇宙粒子会影响观测的效果,为了解决这个问题,NASA用一种极细的丝固定在望远镜内壁,通过量度丝的震动,就可以计算出宇宙粒子的影响。望远镜内壁截面是一个圆,丝的固定点在圆周上。同时,NASA希望丝围成的多边形面积尽可能大。
作为NASA的程序员,你的工作是对一个半径为1的圆周上给定的n个点,选择m个固定点,计算这m个点围成的多边形面积最大是多少。下面是一个n=4,m=3的例子:
上图形如“p1=0.0”的等式表示给定的n个点的位置,而多边形中的数字,例如“1.000000”,表示m个点形成的多边形的面积。
Pi表示第i个点(1≤i≤n)在圆周的位置。点的位置p满足0≤p<1,代表其弧度是2πp。
输入
第一行为两个整数n和m(3≤n≤40,3≤m≤n)。
接下来一行是n个实数p1,p2,…,pn(0≤p1<p2<…<pn<1)。
每行中各个数之间用一个空格分隔。
输出
输出一行一个实数,精确到小数点后6位。
样例输入 复制
4 3
0.0 0.25 0.5 0.666666666666666666667
样例输出 复制
1.183013
提示
【输入输出样例2】
scope.in |
scope.out |
4 4 0.0 0.25 0.5 0.75 |
2.000000 |