# How Many Numbers Are Smaller Than the Current Number

In this lab, you will be creating a function that, given an array `nums`

, determines how many numbers in the array are smaller than each element. For each element `nums[i]`

, the function must count the number of valid `j's`

such that `j != i`

**and** `nums[j] < nums[i]`

. The final output should be an array of the same length, containing the counts of smaller numbers for each element.

You need to implement the following function:

`/** * @param {number[]} nums * @return {number[]} */ var smallerNumbersThanCurrent = function(nums) { };`

## Examples

Here are a few examples to help you understand the problem better:

**Example 1:**

**Input:** nums = [8,1,2,2,3]

**Output:** [4,0,1,1,3]

**Explanation:**

- For nums[0]=8 there exist four smaller numbers than it (1, 2, 2, and 3).
- For nums[1]=1 there does not exist any smaller number than it.
- For nums[2]=2 there exist one smaller number than it (1).
- For nums[3]=2 there exist one smaller number than it (1).
- For nums[4]=3 there exist three smaller numbers than it (1, 2, and 2).

**Example 2:**

**Input:** nums = [6,5,4,8]

**Output:** [2,1,0,3]

**Example 3:**

**Input:** nums = [7,7,7,7]

**Output:** [0,0,0,0]

## Constraints

`2 <= nums.length <= 500`

`0 <= nums[i] <= 100`

Once you are done implementing the function, make sure to export it properly. We will be importing and testing your function using the following import statement:

`import smallerNumbersThanCurrent from './index.js'`

Good luck, and happy coding!