n=input() p=[bin(x).count("1")for x in range(1,n+1)] q=[9e9]*n q[0]=1 step=1 nq=[0] while len(nq): step+=1 nnq=[] for i in nq: if i-p[i]>=0: if q[i-p[i]]>step: q[i-p[i]]=step nnq+=[i-p[i]] if i+p[i]step: q[i+p[i]]=step nnq+=[i+p[i]] nq=nnq print[q[-1],-1][q[-1]==9e9]