num이라는 숫자 목록이 있다고 가정하고 두 고유 요소의 가장 큰 곱을 찾아야 합니다.
따라서 입력이 nums =[8, -3, 1, -5]와 같으면 출력은 여기에서 최대값인 15, (-3)*(-5) =15가 됩니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
-
n :=숫자 크기
-
nums_sort :=목록 번호 정렬
-
max_left :=nums_sort[0] * nums_sort[1]
-
max_right :=nums_sort[n-1] * nums_sort[n-2]
-
ans :=max_left 및 max_right의 최대값
-
반환
예시
더 나은 이해를 위해 다음 구현을 살펴보겠습니다.
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))
입력
[8, -3, 1, -5]
출력
15