Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình tìm tích lớn nhất của hai phần tử khác nhau từ mảng trong Python


Giả sử chúng ta có một danh sách các số gọi là nums, chúng ta phải tìm tích lớn nhất của hai phần tử duy nhất.

Vì vậy, nếu đầu vào là nums = [8, -3, 1, -5], thì đầu ra sẽ là 15, vì (-3)*(-5) = 15 là lớn nhất ở đây.

Để giải quyết vấn đề này, chúng ta sẽ làm theo các bước sau:

  • n := kích thước nums

  • nums_sort := sắp xếp danh sách nums

  • max_left := nums_sort[0] * nums_sort[1]

  • max_right := nums_sort[n-1] * nums_sort[n-2]

  • ans := max(max_left, max_right)

  • trả về ans

Ví dụ

Hãy xem triển khai sau để hiểu rõ hơn:

def solve(nums):
    nums_sort = sorted(nums)
    max_left = nums_sort[0] * nums_sort[1]
    max_right = nums_sort[-1] * nums_sort[-2]
    ans = max(max_left, max_right)
    return ans

nums = [8, -3, 1, -5]
print(solve(nums))

Đầu vào

[8, -3, 1, -5]

Đầu ra

15