Number of Distinct Averages

Easy
50.0% Acceptance

In this lab, you will implement a function to find the number of distinct averages calculated from a given even-length integer array. You are given a 0-indexed integer array `nums` of even length. The goal is to perform a set of operations on the array until it is empty and count the number of distinct averages computed using the following process:

1. Find the minimum number in `nums` and remove it.
2. Find the maximum number in `nums` and remove it.
3. Calculate the average of the two removed numbers.

The average of two numbers `a` and `b` is `(a + b) / 2`.

• For example, the average of `2` and `3` is `(2 + 3) / 2 = 2.5`.

Note that when there is a tie for a minimum or maximum number, any can be removed.

Examples

Example 1:

Input: nums = `[4,1,4,0,3,5]`
Output: 2
Explanation:

1. Remove 0 and 5, and the average is (0 + 5) / 2 = 2.5. Now, nums = `[4,1,4,3]`.
2. Remove 1 and 4. The average is (1 + 4) / 2 = 2.5, and nums = `[4,3]`.
3. Remove 3 and 4, and the average is (3 + 4) / 2 = 3.5.
Since there are 2 distinct numbers among 2.5, 2.5, and 3.5, we return 2.

Example 2:

Input: nums = `[1,100]`
Output: 1
Explanation:
There is only one average to be calculated after removing 1 and 100, so we return 1.

Constraints

• `2 <= nums.length <= 100`
• `nums.length` is even.
• `0 <= nums[i] <= 100`

Challenges

Complete the following challenges:

1. Write the `distinctAverages` function to compute the number of distinct averages of the given input array `nums`.
2. Export the `distinctAverages` function from the `index.js` file.

Evaluation Script

The evaluation script will test your implementation by using dynamic imports, which means you have to ensure that the `distinctAverages` function is exported in your `index.js` file. The order of the tests should match the order of the challenges.

The final length of the array `testlog` in the evaluation script must be equal to the number of challenges. In this case, there are 2 challenges. Make sure you properly write the evaluation script to avoid any errors.

Good luck!