n = int(input())
memo = [-1 for i in range(n+1)]

def fib(n):
    if n == 0 or n == 1:
        memo[n] = 1
        return memo[n]
    if memo[n] >= 0:
        return memo[n]
    memo[n] = fib(n - 2) + fib(n - 1)
    return memo[n]

print(fib(n)) n = int(input()) n int(input()) int input() input -1 for i in range(n+1) for i in range(n+1) i range(n+1) range n+1 n 1 for i in range(n+1) -1 memo = [-1 for i in range(n+1)] memo [-1 for i in range(n+1)] def fib(n):
    if n == 0 or n == 1:
        memo[n] = 1
        return memo[n]
    if memo[n] >= 0:
        return memo[n]
    memo[n] = fib(n - 2) + fib(n - 1)
    return memo[n] fib if n == 0 or n == 1:
        memo[n] = 1
        return memo[n]
     n == 0 or n == 1 n == 0 n 0 n == 1 n 1 memo[n] = 1 memo[n] memo n 1 return memo[n] memo[n] memo n if memo[n] >= 0:
        return memo[n]
     memo[n] >= 0 memo[n] memo n 0 return memo[n] memo[n] memo n memo[n] = fib(n - 2) + fib(n - 1) memo[n] memo n fib(n - 2) + fib(n - 1) fib(n - 2) fib n - 2 n 2 fib(n - 1) fib n - 1 n 1 return memo[n] memo[n] memo n n n print(fib(n)) print fib(n) fib n memo = [-1 for i in range(n+1)] [-1 for i in range(n+1)] memo n = int(input()) int(input()) n def fib(n):
    if n == 0 or n == 1:
        memo[n] = 1
        return memo[n]
    if memo[n] >= 0:
        return memo[n]
    memo[n] = fib(n - 2) + fib(n - 1)
    return memo[n] def fib(n):
    if n == 0 or n == 1:
        memo[n] = 1
        return memo[n]
    if memo[n] >= 0:
        return memo[n]
    memo[n] = fib(n - 2) + fib(n - 1)
    return memo[n] fib
n = int(input())
memo = [-1 for i in range(n+1)]

def fib(n):
    if n == 0 or n == 1:
        memo[n] = 1
        return memo[n]
    if memo[n] >= 0:
        return memo[n]
    memo[n] = fib(n - 2) + fib(n - 1)
    return memo[n]

print(fib(n))
