


'''simple docstring'''






def    _snake_case  (	A = 50			)		->       int:
							lowerCAmelCase__			  =      [1] * (length + 1)

							for row_length in range(3					,       length + 1			):
														for block_length in range(3					,       row_length + 1			):
																					for block_start in range(row_length - block_length			):
																												ways_number[row_length] += ways_number[
																												    row_length - block_start - block_length - 1
																												]

																					ways_number[row_length] += 1

							return ways_number[length]


if __name__ == "__main__":
		print(f"""{solution() = }""")



'''simple docstring'''






def    _snake_case  (	A			)		->       int:
							if n == 1 or not isinstance(A					,       A			):
														return 0
							elif n == 2:
														return 1
							else:
														lowerCAmelCase__			  =      [0, 1]
														for i in range(2					,       n + 1			):
																					sequence.append(sequence[i - 1] + sequence[i - 2]			)

														return sequence[n]


def    _snake_case  (	A			)		->       int:
							lowerCAmelCase__			  =      0
							lowerCAmelCase__			  =      2

							while digits < n:
														index += 1
														lowerCAmelCase__			  =      len(str(fibonacci(A			)			)			)

							return index


def    _snake_case  (	A = 1000			)		->       int:
							return fibonacci_digits_index(A			)


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