程序在Python中查找可以形成最大正方形的矩形数量

假设我们有一个名为 rect 的数组,其中 rect[i] 有两个元素 [len_i, wid_i],其中 len_i 和 wid_i 分别代表第 i 个矩形的长和宽。如果 k <= lenn_i 和 k <= wid_i,现在我们可以切割第 i 个矩形以形成边长为 k 的正方形。因此,例如,如果我们有一个矩形 [4,6],那么我们可以将其切割成边长最多为 4 的正方形。 现在考虑一个名为 maxLen 的参数是我们可以得到的最大正方形的边长从任何给定的矩形。我们必须找到可以制作边长为 maxLen 的正方形的矩形数量。

因此,如果输入类似于 rect = [[6,9],[4,10],[6,13],[17,6]],那么输出将为 3,因为我们可以获得最大的边平方 [ 6, 4, 6, 6],所以有三个最大的矩形。

示例(Python)

让我们看看以下实现以获得更好的理解 -

def solve(rect):
   m = []
   for r in rect:
      m.append(min(r))

   return m.count(max(m))

rect = [[6,9],[4,10],[6,13],[17,6]]
print(solve(rect))

输入

[[6,9],[4,10],[6,13],[17,6]]
输出结果
3