java.lang.Object
g3401_3500.s3428_maximum_and_minimum_sums_of_at_most_size_k_subsequences.Solution

public class Solution extends Object
3428 - Maximum and Minimum Sums of at Most Size K Subsequences.

Medium

You are given an integer array nums and a positive integer k. Return the sum of the maximum and minimum elements of all

subsequences

of nums with at most k elements.

Since the answer may be very large, return it modulo 109 + 7.

Example 1:

Input: nums = [1,2,3], k = 2

Output: 24

Explanation:

The subsequences of nums with at most 2 elements are:

SubsequenceMinimumMaximumSum
[1]112
[2]224
[3]336
[1, 2]123
[1, 3]134
[2, 3]235
Final Total 24

The output would be 24.

Example 2:

Input: nums = [5,0,6], k = 1

Output: 22

Explanation:

For subsequences with exactly 1 element, the minimum and maximum values are the element itself. Therefore, the total is 5 + 5 + 0 + 0 + 6 + 6 = 22.

Example 3:

Input: nums = [1,1,1], k = 2

Output: 12

Explanation:

The subsequences [1, 1] and [1] each appear 3 times. For all of them, the minimum and maximum are both 1. Thus, the total is 12.

Constraints:

  • 1 <= nums.length <= 105
  • 0 <= nums[i] <= 109
  • 1 <= k <= min(70, nums.length)
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • minMaxSums

      public int minMaxSums(int[] nums, int k)