import sequtils,strutils

var
  n = parseInt readLine stdin
  t = repeat(-1,n + 1)
  list = @[1]
t[1] = 1
while list.len != 0:
  var re = newSeq[int]()
  for v in list:
    var b = toBin(v,16).count('1')
    if (v + b) <= n and t[v + b] == -1:
      re.add(v + b)
      t[v + b] = t[v] + 1
    if (v - b) > 0 and t[v - b] == -1:
      re.add(v - b)
      t[v - b] = t[v] + 1
  list = re
echo t[n]