Please solve the programming task below using a self-contained code snippet in a markdown code block.

Given the array nums, for each nums[i] find out how many numbers in the array are smaller than it. That is, for each nums[i] you have to count the number of valid j's such that j != i and nums[j] < nums[i].
Return the answer in an array.
 
Please complete the following python code precisely:
```python
class Solution:
    def smallerNumbersThanCurrent(self, nums: List[int]) -> List[int]:
```