N次将数组的值相加即可达到目标

时间:2018-11-29 21:48:33

标签: php arrays function

  1. 我有一个目标人数(最多可容纳一个教室)
  2. 部门ID的数组。 $depts = array(1,2,3);
  3. 该函数返回部门中参加某门课程的学生总数。

    function noStudentsTakingCourse ($dept_id){ //Some expressions.. return $student_count; }

  4. 可用房间的容量数组,即空置的教室的容量 $available_room_capacities = array(50, 75, 40, 36, 100, 250);

我想要的是: 我希望从部门ID中为每个可用的教室分配一个部门,使该部门的学生人数大于或等于教室的容纳人数。

我不知道您是否能得到我,但是对编程来说是一个陌生的人,而且我花了很多天试图获得这个,但没有成功。

$total_no_of_students_taking_course = 223;
$dept_ids_taking_course = array(1, 2, 3);
$available_room_capacities = array(50, 70, 35, 59, 95, 100);

function noOfStudentsTakingCourse($dept_id)
{
$r = 0;
if ($dept_id == 1) {
    $r = 100;
} elseif ($dept_id == 2) {
    $r = 56;
} elseif ($dept_id == 3) {
    $r == 67;
}

return $r;
}

她就是我想出的。它所做的只是随机地对class_room数组中的值求和,直到它们大于参加该课程的学生总数。但是,大多数情况下,这里的部门只有3个时,它求和的值超过5个。我希望这样的情况: -将为部门1(可容纳100人)分配一个大于100的房间, -将为部门2(可容纳56人)分配一个大于或等于56的房间,依此类推。

这意味着最终数组的长度为3,并且总和不少于223(根据上面的代码)

非常感谢

0 个答案:

没有答案