逻辑问题 - 大盒子中有多少/哪些小盒子 - PHP/MySQL

Big*_*g-G 6 php mysql logic knapsack-problem

我遇到了问题,我会尽可能用最简单的方式来描述它.

使用PHP和MySQL的组合我需要解决以下逻辑问题,这是所需内容的简化版本,但简而言之,逻辑是相同的.

想想方块.我有很多小盒子和一个大盒子.我需要能够使用大量小盒子填充大盒子.

所以让我们打破这个.

我在MySQL中有一个表,其中包含以下行

Table: small_boxes
id | box_size
=============
1  | 100
2  | 150
3  | 200
4  | 1000
5  | 75
..etc
Run Code Online (Sandbox Code Playgroud)

这个表最多可以运行数百个,有些框大小相同

我现在需要填充一个大盒子,例如,大小为800,并且在表格中找到了small_box的所有组合.大盒子可以是用户希望填充的任何尺寸.

这里的目标不是效率,例如,我并不真正关心在公差数字内显示可能适合的盒子的不同变化,或略微过度.

所以,如果可能的话,我想了解如何在PHP/MySQL中解决这个问题.我对两者都非常称职,但问题在于我如何处理这个问题.

例子很棒,但我很乐意接受一些信息让我开始.

Ugo*_*éda 3

你也许应该研究一下光荣的背包问题