Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Three-Triplets Maximum Product

MediumPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Three-Triplets Maximum Product. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

Curefit analyzes three workout metrics selected from a chronological array. Given an integer array nums, find indices i < j < k such that nums[i] * nums[j] * nums[k] is maximized. Return the three selected values in their original index order.

You must design an algorithm better than checking every possible triplet. If multiple triplets have the same maximum product, return any one of them.

Formal Specification

  • Input: An integer array nums with at least three elements.
  • Output: An array containing nums[i], nums[j], and nums[k], in increasing index order, where the product is maximum.
  • The returned values must come from three distinct positions.

Constraints

  • 3 <= nums.length <= 10^5
  • -10^9 <= nums[i] <= 10^9
  • The output may be any triplet with maximum product.
  • The returned values must correspond to distinct indices in increasing order.

Function Signature

def maximum_product_triplet(nums):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output