n = int(input())

memo = [0 for _ in range(45)]

def fib_memo(n):
    if memo[n] != 0:
        return memo[n]
    elif (n == 0) or (n == 1):
        return 1
    else:
        memo[n] = fib_memo(n-1) + fib_memo(n-2)
        return memo[n]
    
print(fib_memo(n)) n = int(input()) n int(input()) int input() input 0 for _ in range(45) for _ in range(45) _ range(45) range 45 for _ in range(45) 0 memo = [0 for _ in range(45)] memo [0 for _ in range(45)] def fib_memo(n):
    if memo[n] != 0:
        return memo[n]
    elif (n == 0) or (n == 1):
        return 1
    else:
        memo[n] = fib_memo(n-1) + fib_memo(n-2)
        return memo[n]
     fib_memo if memo[n] != 0:
        return memo[n]
    elif (n == 0) or (n == 1):
        return 1
    else:
        memo[n] = fib_memo(n-1) + fib_memo(n-2)
        return memo[n]
     memo[n] != 0 memo[n] memo n 0 return memo[n] memo[n] memo n elif (n == 0) or (n == 1):
        return 1
     (n == 0) or (n == 1) n == 0 n 0 n == 1 n 1 return 1 1 memo[n] = fib_memo(n-1) + fib_memo(n-2) memo[n] memo n fib_memo(n-1) + fib_memo(n-2) fib_memo(n-1) fib_memo n-1 n 1 fib_memo(n-2) fib_memo n-2 n 2 return memo[n] memo[n] memo n n n print(fib_memo(n)) print fib_memo(n) fib_memo n def fib_memo(n):
    if memo[n] != 0:
        return memo[n]
    elif (n == 0) or (n == 1):
        return 1
    else:
        memo[n] = fib_memo(n-1) + fib_memo(n-2)
        return memo[n]
     def fib_memo(n):
    if memo[n] != 0:
        return memo[n]
    elif (n == 0) or (n == 1):
        return 1
    else:
        memo[n] = fib_memo(n-1) + fib_memo(n-2)
        return memo[n]
     fib_memo n = int(input()) int(input()) n memo = [0 for _ in range(45)] [0 for _ in range(45)] memo
n = int(input())

memo = [0 for _ in range(45)]

def fib_memo(n):
    if memo[n] != 0:
        return memo[n]
    elif (n == 0) or (n == 1):
        return 1
    else:
        memo[n] = fib_memo(n-1) + fib_memo(n-2)
        return memo[n]
    
print(fib_memo(n))