将总数和各自重量都已知的兔子放进n个笼子中,最终每个笼子的重量相同
请用一个函数实现:
参数:兔子重量的数组和笼子数
提示:兔子重量为正整数,不许杀兔兔测试例子1:
输入:[2,2,3,3,5] , 3
输出:ok测试例子2:
输入:[3,5,5,6,7] , 4
输出:no
上代码:
$arr = [2, 2, 3, 3, 5];
//$arr = [3, 5, 5, 6, 7];
$num = 3;
function main($arr, $num)
{
if(maxShares($arr, count($arr)) == $num) {
echo 'ok';
} else {
echo 'no';
}
}
main($arr, $num);
function maxShares($a, $n)
{
$aux = [];
$sum = array_sum($a);
for ($m = $n; $m >= 2; $m--) {
if ($sum % $m != 0)
continue;
for ($i = 0; $i < $n; $i++)
$aux[$i] = 0;
if (testShares($a, $n, $m, $sum, $sum / $m, $aux, $sum / $m, 1)) {