假设我们有一个 N*M 矩阵 A,这是 3D 图形的表示。点 (i, j) 处建筑物的高度为 A[i][j]。我们需要找到图形的表面积。因此,如果输入类似于 N = 3,M = 3,A = [[1, 4, 5], [3, 3, 4], [1, 3, 5]],则输出将为 72。要解决此问题,我们将遵循以下步骤 -res := 0for i in range 0 to N, dofor j in range 0 to M, doup_side := 0left_side := 0if i > 0, thenup_side := array[i - 1, j]if ... 阅读更多
假设我们有一个包含 n 个值的数组 A(元素可能不唯一)。我们需要找到给定数组的所有子集中可能的最大差值的总和。现在考虑 max(s) 表示任何子集中的最大值,min(s) 表示集合中的最小值。我们需要找到所有可能的子集的 max(s)-min(s) 的总和。因此,如果输入类似于 A = [1, 3, 4],则输出将为 9。要解决此问题,我们将遵循以下步骤 -n := A 的大小对列表 A 进行排序sum_min := 0, sum_max := 0for i in range ... 阅读更多
假设我们有一个排序的正数数组,该数组按升序排序,我们需要找到无法表示为给定集合的任何子集的元素的和的最小正值。我们需要在 O(n) 时间内解决此问题。因此,如果输入类似于 A = [1, 4, 8, 12, 13, 17],则输出将为 2。要解决此问题,我们将遵循以下步骤 -n := A 的大小answer := 1for i in range 0 to n, doif A[i]