Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 + b + c =합계가 되도록 서로 다른 세 배열에서 세 개의 요소를 찾습니다.


세 개의 배열 A, B, C와 "sum"이라는 다른 값이 있다고 가정하고 a + b + c와 같은 세 개의 요소 a, b, c가 있는지 확인해야 합니다. =sum 과 b 와 c 는 세 개의 다른 배열 아래에 있어야 합니다.

따라서 입력이 A =[2,3,4,5,6], B =[3,4,7,2,3], C =[4,3,5,6,7]과 같으면 합계 =12이면 4+2+6 =12이므로 출력은 True가 되고 4, 2, 6은 각각 A, B, C에서 가져옵니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 범위 0에서 A 크기까지의 i에 대해

    • 범위 0에서 B 크기까지의 j에 대해

      • 범위 0에서 C 크기까지의 k에 대해 수행

        • A[i] + B[j] + C[k]가 합과 같으면

          • 참을 반환

  • 거짓을 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

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