标签:bcs xpl function UNC debug https 平均数 lod htm
<?php
/*
* @最优整数均分算法
* @param int $number 待平分的数字
* @param int $taotl 平分总个数
*/
function getDivideNumber($number, $total) {
$divide_number = bcdiv($number, $total); // 除法取平均数
$last_number = bcsub($number, $divide_number * $total); // 获取剩余
$number_str = str_repeat($divide_number.‘|‘, $total - $last_number); // 拼装平分后的数据
$number_str2 = str_repeat(($divide_number + 1).‘|‘, $last_number); // 拼装剩下的分配
$number_str = $number_str2 . $number_str; // 组合
return explode(‘|‘, trim($number_str, ‘|‘)); // 去掉前后多余的分隔符 返回数组
}
$arr = getDivideNumber(20, 8);
print_r($arr);
以上代码执行结果为:
Array
(
[0] => 3
[1] => 3
[2] => 3
[3] => 3
[4] => 2
[5] => 2
[6] => 2
[7] => 2
)
来自:PHP实现最近似的分配法
标签:bcs xpl function UNC debug https 平均数 lod htm
原文地址:https://www.cnblogs.com/maxian/p/14350098.html