N = int(input()) if N == 1: print(1) else: count = 1 num = 1 trace = [1] result = {1} f = False while trace: n = [] count += 1 for num in trace: b1 = bin(num).count('1') if num + b1 == N: print(count) f = True break n1 = num + b1 n2 = num - b1 if n1 < N and n1 not in result: result.add(n1) n.append(n1) if n2 > 1 and n2 not in result: result.add(n2) n.append(n2) trace = n else: if f == False: print(-1)