理解单位n维超立方体的一种简单方法是考虑每个坐标分量都位于[0,1]中时可以得到的n维空间区域。因此,对于一维,它是从0到1的线段;对于二维,它是具有角(0,0)和(1,1)等的正方形。
编写一个程序或函数,给定n返回从单位n维超立方体中均匀随机选择的两点的平均欧几里得距离。您的答案必须在实际值的10 -6以内。如果答案对大n来说溢出了语言的本机浮点类型,那是可以的。
随机选择“大量”的点并计算平均值不能保证这种准确性。
例子:
1→0.3333333333 ...
2→0.5214054331 ...
3→0.6617071822 ...
4→0.7776656535 ...
5→0.8785309152 ...
6→0.9689420830 ...
7→1.0515838734 ...
8→1.1281653402 ...
从MathWorld获得的数据。
这是代码高尔夫球,最低字节数获胜。
在编辑中重申了获胜标准。
—
Magic Octopus Urn'2
只是要清楚一点:距离是指欧几里得距离,是吗?
—
丹尼斯
@carusocomputing如果您想让我为您解决难题,挑战的重点是什么?
—
orlp
@orlp表示反对,这是一个数学难题,直到有人弄清楚数学,然后当每个人都用不同语言复制公式时,它就变成了编程难题。我需要问一个有关此的元问题。
—
Sparr
当您说5位数的精度时,是指在1e-5内,还是当输出应为1.499999999999999时估计1.500000000000001是错误的?
—
xnor