假设我们有三个数组A,B,C和另一个值“ sum”,我们必须检查是否存在三个元素a,b,c,使得a + b + c = sum且a,b和c应该在三个不同的数组。
因此,如果输入像A = [2,3,4,5,6],B = [3,4,7,2,3],C = [4,3,5,6,7],则求和= 12,则输出将为True,因为4 + 2 + 6 = 12,并且分别从A,B和C中获取4,2,6。
为了解决这个问题,我们将遵循以下步骤-
对于0到A的范围内的i,执行
对于0到C大小的k,执行
返回True
如果A [i] + B [j] + C [k]与和相同,则
对于范围0到B大小的j,执行
返回False
让我们看下面的实现以更好地理解-
def is_sum_from_three_arr(A, B, C, sum): for i in range(0 , len(A)): for j in range(0 , len(B)): for k in range(0 , len(C)): if (A[i] + B[j] + C[k] == sum): return True return False A = [2,3,4,5,6] B = [3,4,7,2,3] C = [4,3,5,6,7] sum = 12 print(is_sum_from_three_arr(A, B, C, sum))
[2,3,4,5,6], [3,4,7,2,3], [4,3,5,6,7], 12
输出结果
True