小编bad*_*ria的帖子

在NxNxN二进制数组中查找仅包含1的最大长方体

给定NxNxN二进制数组(仅包含0或1),我们如何获得具有非平凡解的最大长方体,即在O(N ^ 3)?

-

找到在N×N二进制矩阵中仅包含零但在上部维度中的最大矩形是同样的问题.此外,在我的情况下,最大的矩形可以"穿过阵列的边缘",即空间就像是2D矩阵的圆环.

对于2D数组,如果条目是:

00111
00111
11000
00000
00111
Run Code Online (Sandbox Code Playgroud)

'X'描述的解决方案是

00XXX
00XXX
11000
00000
00XXX
Run Code Online (Sandbox Code Playgroud)

我已经完成了NxN二进制数组的计算,并按照http://tech-queries.blogspot.de/2011/03/maximum-中的想法找到了O(N ^ 2)中最大矩形问题的解决方案.area-rectangle-in-histogram.html.但我不知道如何将它应用于3D阵列.

-

解决方案"越过边缘"的3x3x3阵列示例:

111
100
011

111
001
111

011
110
011
Run Code Online (Sandbox Code Playgroud)

解决方案应该是:

1XX
100
0XX

1XX
001
1XX

0XX
110
0XX
Run Code Online (Sandbox Code Playgroud)

arrays algorithm

12
推荐指数
2
解决办法
1728
查看次数

标签 统计

algorithm ×1

arrays ×1