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

โปรแกรมค้นหาผลิตภัณฑ์ที่ใหญ่ที่สุดของสามรายการที่ไม่ซ้ำกันใน Python


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

ดังนั้น หากอินพุตมีค่าเท่ากับ nums =[6, 1, 2, 4, -3, -4] ผลลัพธ์จะเป็น 72 เนื่องจากเราสามารถคูณ (- 3) * (-4) * 6 =72 ได้

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

  • เรียงเลขรายการ

  • n :=ขนาดของ nums

  • maxScore :=-inf

  • maxScore :=สูงสุดของ maxScore และ (nums[0] * nums[1] * nums[n - 1])

  • maxScore :=สูงสุดของ maxScore และ (nums[n - 3] * nums[n - 2] * nums[n - 1])

  • คืนค่า maxScore

ตัวอย่าง

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

def solve(nums):
   nums.sort()
   n = len(nums)
   maxScore = -10000
   maxScore = max(maxScore, nums[0] * nums[1] * nums[n - 1])
   maxScore = max(maxScore, nums[n - 3] * nums[n - 2] * nums[n - 1])
   return maxScore

nums = [6, 1, 2, 4, -3, -4]
print(solve(nums))

อินพุต

[6, 1, 2, 4, -3, -4]

ผลลัพธ์

72