import itertools


def getPool(count):

    if count == 1:

        return [-1, 1]

    list1 = list(map(lambda x:x+count, getPool(count-1)))

    list2 = list(map(lambda x:x-count, getPool(count-1)))

    return list1 + list2


def getN(x):

    for i in itertools.count(1):

        if x in getPool(i):

            return i


getN(x)에 x 넣으면 되요
x에 4넣으니까 3나오네요
- 1 + 2 + 3에서 걸렸겠죠?