比如我有 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.*