#coding:utf-8
n = int(input())
F = [False for i in range(n+1)]
def fib(n):
    if n == 0 or n == 1:
        F[n] = 1
        return 1
    if F[n]:
        return F[n]
    F[n] = fib(n-2) + fib(n-1)
    return F[n]

a = fib(n)
print(a)
 n = int(input()) n int(input()) int input() input False 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) False F = [False for i in range(n+1)] F [False for i in range(n+1)] def fib(n):
    if n == 0 or n == 1:
        F[n] = 1
        return 1
    if F[n]:
        return F[n]
    F[n] = fib(n-2) + fib(n-1)
    return F[n] fib if n == 0 or n == 1:
        F[n] = 1
        return 1
     n == 0 or n == 1 n == 0 n 0 n == 1 n 1 F[n] = 1 F[n] F n 1 return 1 1 if F[n]:
        return F[n]
     F[n] F n return F[n] F[n] F n F[n] = fib(n-2) + fib(n-1) F[n] F n fib(n-2) + fib(n-1) fib(n-2) fib n-2 n 2 fib(n-1) fib n-1 n 1 return F[n] F[n] F n n n a = fib(n) a fib(n) fib n print(a) print a F = [False for i in range(n+1)] [False for i in range(n+1)] F n = int(input()) int(input()) n a = fib(n) fib(n) a def fib(n):
    if n == 0 or n == 1:
        F[n] = 1
        return 1
    if F[n]:
        return F[n]
    F[n] = fib(n-2) + fib(n-1)
    return F[n] def fib(n):
    if n == 0 or n == 1:
        F[n] = 1
        return 1
    if F[n]:
        return F[n]
    F[n] = fib(n-2) + fib(n-1)
    return F[n] fib
#coding:utf-8
n = int(input())
F = [False for i in range(n+1)]
def fib(n):
    if n == 0 or n == 1:
        F[n] = 1
        return 1
    if F[n]:
        return F[n]
    F[n] = fib(n-2) + fib(n-1)
    return F[n]

a = fib(n)
print(a)

