from functools import lru_cache

@lru_cache(maxsize=None)
def fib(n):
    if n <= 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2)

n = int(input())
ans = fib(n)

print(ans) from functools import lru_cache def fib(n):
    if n <= 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2) fib if n <= 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2) n <= 1 n 1 return 1 1 return fib(n - 1) + fib(n - 2) fib(n - 1) + fib(n - 2) fib(n - 1) fib n - 1 n 1 fib(n - 2) fib n - 2 n 2 n n @lru_cache(maxsize=None) fib maxsize=None @lru_cache(maxsize=None) lru_cache maxsize=None maxsize None fib n = int(input()) n int(input()) int input() input ans = fib(n) ans fib(n) fib n print(ans) print ans def fib(n):
    if n <= 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2) def fib(n):
    if n <= 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2) fib ans = fib(n) fib(n) ans n = int(input()) int(input()) n
from functools import lru_cache

@lru_cache(maxsize=None)
def fib(n):
    if n <= 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2)

n = int(input())
ans = fib(n)

print(ans)