Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ค้นหาสามองค์ประกอบจากสามอาร์เรย์ที่แตกต่างกันเพื่อให้ a + b + c =ผลรวมใน Python


สมมติว่าเรามีสามอาร์เรย์ A, B, C และค่าอื่นที่เรียกว่า "sum" เราต้องตรวจสอบว่ามีสามองค์ประกอบ a, b, c ที่ a + b + c =ผลรวม และ 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 และ 4, 2, 6 นำมาจาก A, B, C ตามลำดับ

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • สำหรับผมอยู่ในช่วง 0 ถึงขนาด A ทำ

    • สำหรับ j ในช่วง 0 ถึงขนาด B ให้ทำ

      • สำหรับ k ในช่วง 0 ถึงขนาด C ให้ทำ

        • ถ้า A[i] + B[j] + C[k] เท่ากับผลรวม ดังนั้น

          • คืนค่า True

  • คืนค่าเท็จ

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

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