from collections import deque N = int(input()) cnt = [-1]*(N+1) cnt[1] = 1 que = deque([1]) while que: i = que.popleft() d = i.bit_count() for j in [i - d, i + d]: if 1 <= j <= N and cnt[j] == -1: cnt[j] = cnt[i] + 1 que.append(j) print(cnt[N])