def    a__       (						__UpperCamelCase ):
      SCREAMING_SNAKE_CASE_      =     [[0 for _ in range(__UpperCamelCase )] for _ in range(m + 1 )]
      for i in range(m + 1 ):
            SCREAMING_SNAKE_CASE_      =     1

      for n in range(m + 1 ):
            for k in range(1   ,					__UpperCamelCase ):
                  memo[n][k] += memo[n][k - 1]
                  if n - k > 0:
                        memo[n][k] += memo[n - k - 1][k]

      return memo[m][m - 1]


if __name__ == "__main__":
      import sys

      if len(sys.argv) == 1:
            try:
                  A   :     int       =				int(input("Enter a number: ").strip())
                  print(partition(n))
            except ValueError:
                  print("Please enter a number.")
      else:
            try:
                  A   :     Optional[Any]       =				int(sys.argv[1])
                  print(partition(n))
            except ValueError:
                  print("Please pass a number.")



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

            return sequence[n]


def    a__       (						__UpperCamelCase ):
      SCREAMING_SNAKE_CASE_      =     0
      SCREAMING_SNAKE_CASE_      =     2

      while digits < n:
            index += 1
            SCREAMING_SNAKE_CASE_      =     len(str(fibonacci(__UpperCamelCase ) ) )

      return index


def    a__       (						__UpperCamelCase = 1_0_0_0 ):
      return fibonacci_digits_index(__UpperCamelCase )


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


