2493: 望远镜

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

NASA准备将一枚高精度望远镜发射到地球轨道以观测遥远的天文现象。这枚望远镜要求异常精确,任何小小的干扰都是不允许的。然而穿过望远镜的高速宇宙粒子会影响观测的效果,为了解决这个问题,NASA用一种极细的丝固定在望远镜内壁,通过量度丝的震动,就可以计算出宇宙粒子的影响。望远镜内壁截面是一个圆,丝的固定点在圆周上。同时,NASA希望丝围成的多边形面积尽可能大。

作为NASA的程序员,你的工作是对一个半径为1的圆周上给定的n个点,选择m个固定点,计算这m个点围成的多边形面积最大是多少。下面是一个n=4m=3的例子:

 

上图形如“p1=0.0”的等式表示给定的n个点的位置,而多边形中的数字,例如“1.000000”,表示m个点形成的多边形的面积。

Pi表示第i个点(1≤i≤n)在圆周的位置。点的位置p满足0≤p<1,代表其弧度是2πp

输入

第一行为两个整数nm3≤n≤403≤m≤n)。

接下来一行是n个实数p1p2,…,pn0≤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