import collections as cols n = int(input()) ans = -1 l = cols.deque() l.append((1, 1)) s = [] def bitcount(n): return bin(n).count("1") while True: try: a, b = l.popleft() except: break if a in s or a < 1 or a > n: pass else: if a == n: ans = b break else: s.append(a) d = bitcount(a) l.append((a - d, b + 1)) l.append((a + d, b + 1)) print(ans)