我有一組具有開始和結束時間的事件。我想使它們只要盒在一系列的行沒有重疊,這樣的事情包裝時隙的算法
00:00 01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00
--|--------|--------|--------|--------|--------|--------|--------|--------|--
AAAAAAAAAAAA BBBBBB CCCCCCCCCCCCCCCCCCCC DDDDDDDDDDDD
--|--------|--------|--------|--------|--------|--------|--------|--------|--
EEEEEEEEEEEEEE FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
--|--------|--------|--------|--------|--------|--------|--------|--------|--
GGGGGGGGGGGGGGGGGGG HHHHHHHH IIIIIIIIIIIII
--|--------|--------|--------|--------|--------|--------|--------|--------|--
任何特定的盒子中,以任何特定行的分配並不重要。我想要的是一個算法,將這些箱子打包成最小的行數。
有沒有一個已知的算法呢?
對我來說,這似乎是[子集和問題](https://en.wikipedia.org/wiki/Subset_sum_problem)的變體。 – ThreeFx 2014-09-05 09:51:51