

'''simple docstring'''
import os

# Precomputes a list of the 100 first triangular numbers
_UpperCAmelCase  :		int  =		[int(0.5 * n * (n + 1)) for n in range(1, 1_01)]




def 	UpperCamelCase   (       )		->	Tuple:




  '''simple docstring'''



  lowercase									=os.path.dirname(os.path.realpath(lowercase_	)	)
  lowercase									=os.path.join(lowercase_     ,					'''words.txt'''	)

  lowercase									=''''''
  with open(lowercase_	) as f:
    lowercase									=f.readline()

  lowercase									=[word.strip('''"'''	) for word in words.strip('''\r\n'''	).split(''','''	)]
  lowercase									=[
      word
      for word in [sum(ord(lowercase_	) - 6_4 for x in word	) for word in words]
      if word in TRIANGULAR_NUMBERS
  ]
  return len(lowercase_	)


if __name__ == "__main__":
     print(solution())



'''simple docstring'''

def 					__UpperCamelCase				(						lowercase__    :	int			):






     '''simple docstring'''





     if n == 1 or not isinstance(lowercase__,       lowercase__			):
          return 0
     elif n == 2:
          return 1
     else:
          __lowercase      		=[0, 1]
          for i in range(2,       n + 1			):
               sequence.append(sequence[i - 1] + sequence[i - 2]			)

          return sequence[n]

def 					__UpperCamelCase				(						lowercase__    :	int			):






     '''simple docstring'''





     __lowercase      		=0
     __lowercase      		=2

     while digits < n:
          index += 1
          __lowercase      		=len(str(fibonacci(lowercase__			)			)			)

     return index

def 					__UpperCamelCase				(						lowercase__    :	int = 10_00			):






     '''simple docstring'''





     return fibonacci_digits_index(lowercase__			)


if __name__ == "__main__":
       print(solution(int(str(input()).strip())))


