# fn-q18
# Sections 11-16, Q.18.a), p.56-57, p.258
# input: 1988

def f(n):
  if (n == 1):
    return 1
  elif (n == 3):
    return 3
  elif not (n%2 == 1):
    return f(n//2)
  elif (n-1) % 4 == 0:
    return 2*f(1 + n//2) - f(n//4)
  else:  # (n-3) % 4 == 0
    return 3*f(n//2) - 2*f(n//4)

n = int(input("n=? "))
count = 0
for i in range(1, n+1):
  if (i == f(i)):
    count += 1
print(count)