情况是我必须用x人填满房间。对于这个例子,让我们使用:
$persons = 7;
我得到了一个数组:
$differentRoom = array(
'Room 1' => 1, //This room fits 1 person
'Room 2' => 2, //This room fits 2 persons
'Room 3' => 3, //This room fits 3 persons
);
现在我希望 PHP 以最短的方式生成正好是 7 的组合。结果必须是,你需要:'Room3''Room 3''Room 1'
在另一个例子中,我有
$persons = 15;
还有一个数组
$differentRooms = array(
'Room 1' => 4, // This room fits x persons
'Room 2' => 7,
);
这次组合不能正好是 15。在这种情况下,结果必须是大于 15 的组合。在这种情况下,它将是 16。16 最接近 10,结果必须是。您需要:“房间 2”“房间 2”“房间 1”
我怎样才能做到这一点?