There is an array with some numbers. All numbers are equal except for one. Try to find it!

```python
find_uniq([ 1, 1, 1, 2, 1, 1 ]) == 2
find_uniq([ 0, 0, 0.55, 0, 0 ]) == 0.55
```

It’s guaranteed that array contains at least 3 numbers.

The tests contain some very huge arrays, so think about performance.

This is the first kata in series:

1. Find the unique number (this kata)
2. [Find the unique string](https://www.codewars.com/kata/585d8c8a28bc7403ea0000c3)
3. [Find The Unique](https://www.codewars.com/kata/5862e0db4f7ab47bed0000e5)

Difficulty: introductory

Starter code:

def find_uniq(arr):
	

Solutions:
def find_uniq(arr):
    a, b = set(arr)
    return a if arr.count(a) == 1 else b

def find_uniq(arr):
    if (arr[0]==arr[1]):
        return([x  for x in arr[2:] if x!=arr[0] ][0])
    return(arr[0] if arr[1]==arr[2] else arr[1])


def find_uniq(arr):
    s = set(arr)
    for e in s:
        if arr.count(e) == 1:
            return e


def find_uniq(arr):
    a = sorted(arr)
    return a[0] if a[0] != a[1] else a[-1]

from collections import Counter

def find_uniq(a):
    return Counter(a).most_common()[-1][0]

def find_uniq(arr):
    if arr[0] != arr[1]:
        if arr[0] != arr[2]:
            return arr[0]
        else:
            return arr[1]           
    else:
        for i in arr[2:]:
            if i != arr[0]:
                return i

from collections import Counter

def find_uniq(arr):
    return next(k for k,v in Counter(arr).items() if v == 1)

def find_uniq(arr):
    return [x for x in set(arr) if arr.count(x) == 1][0]

def find_uniq(arr):
    arr.sort()
    return arr[0] if arr[0] != arr[1] else arr[-1]

def find_uniq(arr):
    res = sorted(arr)
    return res[0] if res[0] != res[1] else res[-1]


def find_uniq(arr):
    culprit = arr[1]
    
    if arr[0] == arr[2]:
        culprit = arr[0]
        
    for i in arr:
        if i != culprit:
            return i


def find_uniq(arr):
    x = arr[0 if arr[0] == arr[1] else 2]
    return next(y for y in arr if y != x)