LeetCode 1799. Maximize Score After N Operations
Backtracking + Cache
You are given nums, an array of positive integers of size 2 * n. You must perform n operations on this array.
In the ith operation (1-indexed), you will:
Choose two elements,
xandy.Receive a score of
i * gcd(x, y).Remove
xandyfromnums.
Return the maximum score you can receive after performing n operations.
The function gcd(x, y) is the greatest common divisor of x and y.
Example 1:
Input: nums = [1,2]
Output: 1
Explanation: The optimal choice of operations is:
(1 * gcd(1, 2)) = 1Example 2:
Input: nums = [3,4,6,8]
Output: 11
Explanation: The optimal choice of operations is:
(1 * gcd(3, 6)) + (2 * gcd(4, 8)) = 3 + 8 = 11Example 3:
Constraints:
1 <= n <= 7nums.length == 2 * n1 <= nums[i] <= 10^6
Solution
PreviousLeetCode 1798. Maximum Number of Consecutive Values You Can MakeNextLeetCode 1800. Maximum Ascending Subarray Sum
Last updated
Was this helpful?