We need a function ```count_sel()``` that receives an array or list of integers (positive and negative) and may give us the following information in the order and  structure presented bellow:
```[(1), (2), (3), [[(4)], 5]]```
(1) - Total amount of received integers.
(2) - Total amount of different values the array has.
(3) - Total amount of values that occur only once.
(4) and (5) both in a list
(4) - It is (or they are) the element(s) that has (or have) the maximum occurrence. If there are more than one, the elements should be sorted (by their value obviously)
(5) - Maximum occurrence of the integer(s)
Let's see some cases
```python
____ count_sel([-3, -2, -1, 3, 4, -5, -5, 5, -1, -5]) ----> [10, 7, 5, [[-5], 3]]
(1) - The list has ten elements (10 numbers)
(2) - We have seven different values: -5, -3, -2, -1, 3, 4, 5 (7 values)
(3) - The numbers that occur only once: -3, -2, 3, 4, 5 (5 values)
(4) and (5) - The number -5 occurs three times (3 occurrences)
____ count_sel([4, 4, 2, -3, 1, 4, 3, 2, 0, -5, 2, -2, -2, -5]) ----> [14, 8, 4, [[2, 4], 3]]
```
Enjoy it and happy coding!!
from collections import defaultdict, Counter


def count_sel(nums):
    cnt = Counter(nums)
    d = defaultdict(list)
    total = 0
    unique = 0
    for k, v in cnt.items():
        d[v].append(k)
        total += v
        unique += 1
    maximum = max(d)
    return [total, unique, len(d[1]), [sorted(d[maximum]), maximum]]

from collections import defaultdict, Counter


def count_sel(nums):
    cnt = Counter(nums)
    d = defaultdict(list)
    total = 0
    unique = 0
    for k, v in cnt.items():
        d[v].append(k)
        total += v
        unique += 1
    maximum = max(d)
    return [total, unique, len(d[1]), [sorted(d[maximum]), maximum]]
