def main():
    N = int(input())
    if N <= 1:
        print(1)
        return
    fib = [0]*(N+1)
    fib[0], fib[1] = 1, 1
    for i in range(2, N+1):
        fib[i] = fib[i-1] + fib[i-2]
    print(fib[N])


if __name__ == "__main__":
    main() def main():
    N = int(input())
    if N <= 1:
        print(1)
        return
    fib = [0]*(N+1)
    fib[0], fib[1] = 1, 1
    for i in range(2, N+1):
        fib[i] = fib[i-1] + fib[i-2]
    print(fib[N]) main N = int(input()) N int(input()) int input() input if N <= 1:
        print(1)
        return
     N <= 1 N 1 print(1) print 1 return fib = [0]*(N+1) fib [0]*(N+1) [0] 0 N+1 N 1 fib[0], fib[1] = 1, 1 fib[0] fib 0 1 fib[1] fib 1 1 for i in range(2, N+1):
        fib[i] = fib[i-1] + fib[i-2]
     i range(2, N+1) range 2 N+1 N 1 fib[i] = fib[i-1] + fib[i-2] fib[i] fib i fib[i-1] + fib[i-2] fib[i-1] fib i-1 i 1 fib[i-2] fib i-2 i 2 print(fib[N]) print fib[N] fib N if __name__ == "__main__":
    main() __name__ == "__main__" __name__ "__main__" main() main def main():
    N = int(input())
    if N <= 1:
        print(1)
        return
    fib = [0]*(N+1)
    fib[0], fib[1] = 1, 1
    for i in range(2, N+1):
        fib[i] = fib[i-1] + fib[i-2]
    print(fib[N]) def main():
    N = int(input())
    if N <= 1:
        print(1)
        return
    fib = [0]*(N+1)
    fib[0], fib[1] = 1, 1
    for i in range(2, N+1):
        fib[i] = fib[i-1] + fib[i-2]
    print(fib[N]) main
def main():
    N = int(input())
    if N <= 1:
        print(1)
        return
    fib = [0]*(N+1)
    fib[0], fib[1] = 1, 1
    for i in range(2, N+1):
        fib[i] = fib[i-1] + fib[i-2]
    print(fib[N])


if __name__ == "__main__":
    main()
