比方说,你有一个正整数ñ。首先,建立一个具有N个顶点的规则多边形,相邻顶点之间的距离为1。然后将每个顶点之间的线连接到另一个顶点。最后,计算所有行的总和。
例
给定输入N = 6,用连接每个顶点和其他顶点的线构建一个六边形。
如您所见,总共有6条边界线(长度= 1),3条边界长度加倍(长度= 2)的线和其他6条线,我们可以使用毕达哥拉斯定理来计算,这是
如果将线的长度相加,我们将得到(6 * 1)+(3 * 2)+(6 * 1.732)= 22.392。
附加信息
由于不将具有2个或更少顶点的结构视为多边形,因此NaN
对于N = 1,输出0(或,因为单个顶点之间的距离没有多大意义),因为单个顶点无法连接到其他顶点,而对于1,则输出1 N = 2,因为两个顶点通过一条直线连接。
输入值
任何合理格式的整数N。
输出量
所有行的长度加总起来,至少精确到小数点后三位,可以作为函数返回值或直接打印到stdout
。
规则
- 禁止出现标准漏洞。
- 这是code-golf,因此以任何语言表示的最短代码(以字节为单位)将获胜。
祝好运!
测试用例
(Input) -> (Output)
1 -> 0 or NaN
2 -> 1
3 -> 3
5 -> 13.091
6 -> 22.392
nan
因为单个顶点之间的距离反而没有多大意义。
n=1
我认为您可能还应该允许引发错误。
N
,因为输出变大而浮点数变小。
1
吗?nan
例如,我当前的输入将返回而不是零,并且只需要特殊的大小写即可。