以下是一个示例代码,用于求一个给定数组按组求和的最大值:
def max_group_sum(arr, k):
# 将数组分为 k 组
groups = [arr[i:i+k] for i in range(0, len(arr), k)]
# 对每一组求和,并找出最大值
max_sum = float('-inf')
for group in groups:
group_sum = sum(group)
max_sum = max(max_sum, group_sum)
return max_sum
# 测试示例
arr = [1, 2, 3, 4, 5, 6, 7]
k = 3
result = max_group_sum(arr, k)
print(result) # 输出 18
在这个例子中,我们首先将给定的数组 arr
分为 k
组,并存储在 groups
列表中。然后,我们使用一个循环对每一组进行求和,并找到最大的求和值。最后返回最大的求和值。在这个例子中,数组 [1, 2, 3, 4, 5, 6, 7]
被分为了三组 [1, 2, 3], [4, 5, 6], [7]
,分别对每一组进行求和后,最大的求和值为 18。