def fib(n):
    nums = []
    for i in range(n+1):
        if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
    return nums[n]


def main():
    n = int(input())
    print(fib(n))


if __name__ == "__main__":
    main()
 def fib(n):
    nums = []
    for i in range(n+1):
        if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
    return nums[n] fib nums = [] nums [] for i in range(n+1):
        if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
     i range(n+1) range n+1 n 1 if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
     i <= 1 i 1 nums.append(1) nums.append nums append 1 nums.append(nums[i-1]+nums[i-2]) nums.append nums append nums[i-1]+nums[i-2] nums[i-1] nums i-1 i 1 nums[i-2] nums i-2 i 2 return nums[n] nums[n] nums n n n def main():
    n = int(input())
    print(fib(n)) main n = int(input()) n int(input()) int input() input print(fib(n)) print fib(n) fib n if __name__ == "__main__":
    main() __name__ == "__main__" __name__ "__main__" main() main def fib(n):
    nums = []
    for i in range(n+1):
        if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
    return nums[n] def fib(n):
    nums = []
    for i in range(n+1):
        if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
    return nums[n] fib def main():
    n = int(input())
    print(fib(n)) def main():
    n = int(input())
    print(fib(n)) main
def fib(n):
    nums = []
    for i in range(n+1):
        if i <= 1:
            nums.append(1)
        else:
            nums.append(nums[i-1]+nums[i-2])
    return nums[n]


def main():
    n = int(input())
    print(fib(n))


if __name__ == "__main__":
    main()

