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

โปรแกรมหาผลคูณมากที่สุดของสามองค์ประกอบที่ต่างกันใน Python

การหาผลคูณสูงสุดของสามองค์ประกอบที่ต่างกัน

กำหนดรายการ nums หาผลคูณสูงสุดของสามองค์ประกอบที่ต่างกัน

อัลกอริทึม

  1. เรียง nums
  2. ผลคูณมากสุดจะเป็นหนึ่งในสองกรณี:
    • สองตัวเล็กสุด (ลบ) × ตัวใหญ่สุด (บวก)
    • สามตัวใหญ่สุด
  3. เปรียบเทียบทั้งสองค่า

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

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))

ผลลัพธ์

72

คำอธิบาย

เรียง: [-4, -3, 1, 2, 4, 6]

  • -4 × -3 × 6 = 72
  • 2 × 4 × 6 = 48
  • สูงสุด = 72