n = int(input()) visited = [-1 for i in range(n+1)] q = [[1,1]] visited[0] = 1 visited[1] = 1 while q : p , i = q.pop(0) if p == n: print i quit() a = p + bin(p).count("1") if a < n + 1 and visited[a] == -1: visited[a] = 1 q.append([a,i + 1]) b = p - bin(p).count("1") if 0 < b and visited[b] == -1: visited[b] = 1 q.append([b,i + 1]) print -1