- 主题:[求助]问下平均数有没有什么快速算法
比如我有 2 3 5 6 1 8 6 10
8个数
然后我可以算出平均数是5.125
但是我需要大家都取最近的向5(5.125)靠近的数
然后小于5的数与5的差值和大于5的值与5的差值一样
比如
2 3 5 6 1 8 6 10
变成5
-3 -2 0 1 -4 3 1 5
abs((-3)+(-2)+(-4))<(1+3+1+5)
所以由于要保证负值变化小,所以最小移位的正值6保持不变。
也就是
2 3 5 6 1 8 6 10
变成5
-3 -2 0 0 -4 3 1 5
abs((-3)+(-2)+(-4))=(0+3+1+5)
实现这个有没有简单的算法啊
谢谢
--
FROM 222.66.149.*
没看懂
【 在 BrendanEich 的大作中提到: 】
: 比如我有 2 3 5 6 1 8 6 10
: 8个数
: 然后我可以算出平均数是5.125
: ...................
--
FROM 109.150.108.*
n个数之和对n取模是需要减去的差。找到第一个比平均数大这个差的数。
【 在 BrendanEich 的大作中提到: 】
: 比如我有&nbsp;2&nbsp;3&nbsp;5&nbsp;6&nbsp;1&nbsp;8&nbsp;6&nbsp;1 ...
--
FROM 61.148.243.*
先排序
【 在 dawnrain 的大作中提到: 】
: n个数之和对n取模是需要减去的差。找到第一个比平均数大这个差的数。 ...
--
FROM 61.148.243.*