如何解决如何确定一组给定的形状是否适合固定大小的网格
我有一个给定大小的网格。出于演示目的,假设它是一个 4x2 网格(4 列和 2 行 [见下图])
此外,我有一组应显示在网格内的矩形。这些矩形可以有不同的大小。矩形的大小由它在网格上跨越的列数和行数指定。例如,一个矩形的大小可能为 {width: 2,height: 1}
,这意味着它在水平方向上占据两个网格元素,在垂直方向上占据一个网格元素(见下图)。矩形的最小尺寸为 {width:1,height:1}
正如我所说,给出了一组这些矩形。这样的集合存储在数组中。例如
[
{width: 1,height:2},{width: 2,{width: 1,height:1}
]
此示例将生成以下网格
正如您想象的那样,这些矩形的集合是无效的,因为它们无法放入网格中。 例如配置
[
{width: 3,height:1},{width: 3,height:1}
]
永远无法适应 4x2 网格。
我想回答的问题是: 决定一组给定的矩形是否适合 4x2 网格的规则是什么?
当然,每组试图占据超过 8 个网格元素的矩形都是无效的。例如
[
{width: 3,height:1}
]
显然是无效的,因为它试图占据 11 个网格元素 (3*2 + 2*2 + 1*1
)。但是仅凭这条规则并不能捕获所有无效情况。我现在有点困惑还有哪些其他规则可以决定一组矩形是否有效/无效。
这种问题似乎属于装箱问题,但我不确定。特别是因为我见过的大部分 Packing Problems 都不要处理固定大小的网格。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。