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

ตรวจสอบว่าอาร์เรย์มีองค์ประกอบที่เท่ากับผลคูณขององค์ประกอบที่เหลืออยู่ใน Python . หรือไม่


สมมติว่าเรามีอาร์เรย์ที่เรียกว่า nums เราต้องตรวจสอบว่าอาร์เรย์มีองค์ประกอบที่มีค่าเท่ากับผลคูณขององค์ประกอบอื่นๆ ทั้งหมดหรือไม่

ดังนั้น หากอินพุตมีค่าเท่ากับ nums =[3,2,24,4,1] ผลลัพธ์จะเป็น True, 24 =(3*2*4*1)

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

  • mul :=1
  • สำหรับฉันในช่วง 0 ถึงขนาดของ nums - 1 ทำ
    • mul :=mul * nums[i]
  • สำหรับฉันในช่วง 0 ถึงขนาดของ nums - 1 ทำ
    • ถ้า nums[i] เหมือนกับ (mul / nums[i]) แล้ว
      • คืนค่า True
  • คืนค่าเท็จ

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

โค้ดตัวอย่าง

def solve(nums):
   mul = 1
   for i in range(len(nums)):
      mul *= nums[i]
 
   for i in range(len(nums)):
      if nums[i] == mul / nums[i]:
         return True
 
   return False
 
nums = [3,2,24,4,1]
print(solve(nums))

อินพุต

[3,2,24,4,1]

ผลลัพธ์

True