It is November 18 now in Japan. By the way, 11 and 18 are adjacent Lucas numbers.
You are given an integer N. Find the N-th Lucas number.
Here, the i-th Lucas number L_i is defined as follows:
 - L_0=2
 - L_1=1
 - L_i=L_{i-1}+L_{i-2} (i≥2)

-----Constraints-----
 - 1≤N≤86
 - It is guaranteed that the answer is less than 10^{18}.
 - N is an integer.

-----Input-----
Input is given from Standard Input in the following format:
N

-----Output-----
Print the N-th Lucas number.

-----Sample Input-----
5

-----Sample Output-----
11

 - L_0=2
 - L_1=1
 - L_2=L_0+L_1=3
 - L_3=L_1+L_2=4
 - L_4=L_2+L_3=7
 - L_5=L_3+L_4=11
Thus, the 5-th Lucas number is 11.
[{"code": "n=int(input())\na,b=2,1\nfor i in range(n):\n    nxt=a+b\n    a,b=b,nxt\nprint(a)", "passed": true, "time": 0.16, "memory": 14100.0, "status": "done"}, {"code": "n=int(input())\ndef fibonacci(n):\n    fib = [2, 1]\n    for i in range(2, n):\n        fib.append(fib[i - 2] + fib[i - 1])\n        \n    return fib[n -1]\nprint(fibonacci(n+1))", "passed": true, "time": 0.23, "memory": 14088.0, "status": "done"}, {"code": "n = int(input())\nlucas = [2,1]\nfor i in range(2,n+1):\n    lucas.append(lucas[-2]+lucas[-1])\nprint(lucas[-1])", "passed": true, "time": 0.15, "memory": 14272.0, "status": "done"}, {"code": "n = int(input())\n\nnum_list = [0]*(n+1)\nnum_list[0] = 2\nnum_list[1] = 1\nfor i in range(2, n+1,1):\n  num_list[i] = num_list[i-1] + num_list[i-2]\n\nans = num_list[n]\nprint(ans)", "passed": true, "time": 0.14, "memory": 14212.0, "status": "done"}, {"code": "N = int(input())\nl1 = 2\nl2 = 1\n\nfor i in range(N-1):\n  l1, l2 = l2, l1 + l2\nprint(l2)\n", "passed": true, "time": 0.16, "memory": 14048.0, "status": "done"}, {"code": "n = int(input())\nif n == 1:\n    print(1)\nelse:\n    x = [2, 1]\n    for i in range(2, n+1):\n        x.append(x[i-2] + x[i-1])\n    print(x[n])", "passed": true, "time": 0.24, "memory": 14332.0, "status": "done"}, {"code": "n=int(input())\nlucas=[2,1]\nfor i in range(2,n+1):\n    lucas.append(lucas[i-1]+lucas[i-2])\nprint(lucas[-1])", "passed": true, "time": 0.25, "memory": 14180.0, "status": "done"}, {"code": "n = int(input())\na = 2\nb = 1\nfor i in range(n-1):\n    c=b+a\n    a,b=b,c\nif n == 0:\n    print(a)\nelif n == 1:\n    print(b)\nelse:\n    print(c)", "passed": true, "time": 0.21, "memory": 14100.0, "status": "done"}, {"code": "N = int(input())\n\nif N == 0:\n  print(2)\nelif N == 1:\n  print(1)\nelse:\n  \n  n_2 = 2\n  n_1 = 1\n  \n  for _ in range(N-1):\n    n_0 = n_1 + n_2\n    n_2 = n_1\n    n_1 = n_0\n    \n  \n  print(n_0)", "passed": true, "time": 0.15, "memory": 14152.0, "status": "done"}, {"code": "n = int(input())\na, b = 2, 1\nfor i in range(n):\n    a, b = b, a+b\nprint(a)\n", "passed": true, "time": 0.14, "memory": 14164.0, "status": "done"}, {"code": "N = int(input())\n\nL = [2, 1]\n\nfor i in range(N-1):\n    if i == 0:\n        L.append(L[0] + L[1])\n    else:\n        L.append(L[i] + L[i+1])\n\nprint((L[-1]))\n", "passed": true, "time": 0.15, "memory": 14244.0, "status": "done"}, {"code": "n = int(input())\nl0 = 2\nl1 = 1\nsum_ = 1\nfor i in range(n-1):\n    sum_ = l0 + l1\n    l0 = l1\n    l1 = sum_\nprint(sum_)", "passed": true, "time": 0.14, "memory": 14132.0, "status": "done"}, {"code": "\nn = int(input())\na_ = 2\na = 1\nfor i in range(n-1):\n    a, a_ = a + a_, a\nprint(a)", "passed": true, "time": 0.14, "memory": 14112.0, "status": "done"}, {"code": "n = int(input())\ncalc_r = [0]*(n+1)\ncalc_r[0] = 2\ncalc_r[1] = 1\n\nfor i in range(2,n+1):\n    calc_r[i] = calc_r[i-1] + calc_r[i-2]\nans = calc_r[n]\nprint(ans)", "passed": true, "time": 0.14, "memory": 14104.0, "status": "done"}, {"code": "n=int(input())\ns=[]\ns.append(2)\ns.append(1)\nif n==1:\n    print('1')\n    return\nelse:\n    for i in range(2,87):\n        k = s[i-2]+s[i-1]\n        s.append(k)\n        if i==n:\n            print((s[i]))\n            return\n", "passed": true, "time": 0.14, "memory": 14260.0, "status": "done"}, {"code": "n = int(input())\n\narr = [0 for i in range(n+1)]\narr[0] = 2\narr[1] = 1\nfor i in range(2,n+1):\n    arr[i] = arr[i-1] + arr[i-2]\nprint(arr[n])", "passed": true, "time": 0.15, "memory": 14072.0, "status": "done"}, {"code": "n = int(input())\nluk = [2,1]\nfor i in range(2,n+1):\n    luk.append(luk[i-1]+luk[i-2])\nprint(luk[-1])", "passed": true, "time": 0.14, "memory": 14276.0, "status": "done"}, {"code": "N = int(input())\nL = [0] * 100\nL[0] = 2\nL[1] = 1\nfor i in range(2,N + 1):\n  L[i] = L[i - 1] + L[i - 2]\nprint(L[N])", "passed": true, "time": 0.14, "memory": 14084.0, "status": "done"}, {"code": "n = int(input())\nl = [2, 1]\n\nfor i in range(85):\n  l.append(l[-2]+l[-1])\n\nprint(l[n])", "passed": true, "time": 0.18, "memory": 14276.0, "status": "done"}, {"code": "N = int(input())\n\nif N == 0:\n    print((2))\n    return\nelif N == 1:\n    print((1))\n    return\n\nL_2 = 2\nL_1 = 1\nfor i in range(N-1):\n    L = L_1+L_2\n    L_2 = L_1\n    L_1 = L\nprint(L)\n", "passed": true, "time": 0.15, "memory": 14304.0, "status": "done"}, {"code": "N = int(input())\na,b = 2,1\nfor i in range(N):\n  a,b = b,(a+b)\nprint(a)", "passed": true, "time": 0.14, "memory": 14240.0, "status": "done"}, {"code": "def answer(n: int) -> int:\n    if n == 1:\n        return 1\n\n    two_previous_l = 2\n    previous_l = 1\n    l = 3\n    for _ in range(n - 2):\n        two_previous_l = previous_l\n        previous_l = l\n        l = previous_l + two_previous_l\n\n    return l\n\n\ndef main():\n    n = int(input())\n    print((answer(n)))\n\n\ndef __starting_point():\n    main()\n\n__starting_point()", "passed": true, "time": 0.14, "memory": 14156.0, "status": "done"}, {"code": "n = int(input())\nif n == 0:\n  print(2)\n  return\nelif n == 1:\n  print(1)\n  return\n  \nq = [2,1]\nfor i in range(2,88):\n  m = q[i-1]+q[i-2]\n  q.append(m)\n  \nprint(q[n])", "passed": true, "time": 0.14, "memory": 14076.0, "status": "done"}, {"code": "n = int(input())\nLuca = [0]*100\nLuca[0] = 2\nLuca[1] = 1\n\nfor i in range(2,n+1):\n    Luca[i] = Luca[i-1] + Luca[i-2]\n\nprint(Luca[n])", "passed": true, "time": 0.14, "memory": 14216.0, "status": "done"}, {"code": "N = int(input())\n\nlucas_list = []\n\nfor i in range(N + 1):\n  if i == 0:\n    lucas_list.append(2)\n  elif i == 1:\n    lucas_list.append(1)\n  else:\n    lucas_list.append(lucas_list[-1] + lucas_list[-2])\nelse:\n  print(lucas_list[-1])", "passed": true, "time": 0.14, "memory": 14228.0, "status": "done"}, {"code": "n= int(input())\na,b,c = 2,1,3\nfor i in range(n):\n  a,b,c=b,c,b+c\nprint(a)", "passed": true, "time": 0.14, "memory": 14256.0, "status": "done"}, {"code": "n = int(input())\nif n == 0:\n  print(2)\nelif n == 1:\n  print(1)\nelse:\n  a = 2\n  b = 1\n  for i in range(2, n + 1):\n    c = b\n    b += a\n    a = c\n  print(b)", "passed": true, "time": 0.14, "memory": 14264.0, "status": "done"}, {"code": "n = int(input())\nl1 = 2\nl2 = 1\nl = 1\nfor i in range(n-1):\n    l = l1+l2\n    l1, l2 = l2, l\nprint(l)", "passed": true, "time": 0.23, "memory": 14048.0, "status": "done"}, {"code": "import sys\nN = int(input())\nif(N==1):\n  print(1)\n  return\nans = 0\nL0 = 2\nL1 = 1\nfor i in range(N-1):\n  ans = L0 + L1\n  L0 = L1\n  L1 = ans\nprint(ans)", "passed": true, "time": 0.16, "memory": 14304.0, "status": "done"}, {"code": "N = int(input())\n\nL = [2, 1]\nif N < 2:\n    print(L[N])\nelse:\n    for i in range(2, N+1):\n        L.append(L[i-2]+L[i-1])\n    print(L[-1])", "passed": true, "time": 0.14, "memory": 14124.0, "status": "done"}, {"code": "n = int(input())\nl =[2,1]\nfor i in range(2,n+1):\n    l.append(l[i-1]+l[i-2])\nprint(l[n])", "passed": true, "time": 0.14, "memory": 14040.0, "status": "done"}, {"code": "n = int(input())\nluca = [0 for i in range(n+1)]\nluca[0] = 2\nluca[1] = 1\nfor j in range(2,n+1):\n  luca[j] = luca[j-1] + luca[j-2]\nprint(luca[n])", "passed": true, "time": 0.2, "memory": 14176.0, "status": "done"}, {"code": "N = int(input())\ndp = [[]for i in range(87)] \ndp[0] = 2\ndp[1] = 1\n\nfor i in range(2,87):\n    dp[i] = dp[i-1]+dp[i-2]\n    if i == N:\n        print(dp[i])\n        break\nelse:\n    print(dp[N])", "passed": true, "time": 0.16, "memory": 14092.0, "status": "done"}, {"code": "n=int(input())\nl=[0 for i in range(n+1)]\nl[0]=2\nl[1]=1\nfor j in range(2,n+1):\n  l[j]=l[j-1]+l[j-2]\nprint(l[n])", "passed": true, "time": 0.14, "memory": 14240.0, "status": "done"}, {"code": "a=int(input())\nL=[2,1]\nfor i in range(a-1):\n    L.append(L[i]+L[i+1])\nprint(L[a])", "passed": true, "time": 0.15, "memory": 14084.0, "status": "done"}, {"code": "n = int(input())\nlyca = [2,1]\nfor i in range(2,87):\n    lyca.append(lyca[i-1]+lyca[i-2])\nprint(lyca[n])", "passed": true, "time": 0.27, "memory": 14180.0, "status": "done"}, {"code": "n = int(input())\nl0 = 2\nl1 = 1\n\nif n == 1:\n    print(l1)\nelse:\n    for i in range(n-1):\n        ln = l0 + l1\n        l0 = l1\n        l1 = ln\n    print(ln)", "passed": true, "time": 0.31, "memory": 14164.0, "status": "done"}, {"code": "N = int(input())\nl = [2,1]\nif N  == 1 :\n    print(l[1])\n    return\nfor i in range(2,N+1) :\n    l.append(l[i-2] + l[i-1])\nprint(l[-1])", "passed": true, "time": 0.14, "memory": 14132.0, "status": "done"}, {"code": "N = int(input())\nL = [2, 1]\ni = 0\nwhile i < N:\n  buff = L[0]\n  L[0] = L[1]\n  L[1] += buff\n  i += 1\nprint((L[0]))\n", "passed": true, "time": 0.14, "memory": 14348.0, "status": "done"}, {"code": "from collections import defaultdict\n\n\ndef mapt(fn, *args):\n    return tuple(map(fn, *args))\n\n\ndef Input():\n    return mapt(int, input().split(\" \"))\n\n\ndef main():\n    n = int(input())\n    l = defaultdict(int)\n    l[0], l[1] = 2, 1\n    for i in range(2, n+1):\n        l[i] = l[i-1] + l[i-2]\n    print(l[n])\n\n\nmain()", "passed": true, "time": 0.14, "memory": 14320.0, "status": "done"}, {"code": "n = int(input())\na = 2\nb = 1\nc = 3\nfor i in range(n):\n    c = b + a\n    a = b\n    b = c\nprint(a)", "passed": true, "time": 0.24, "memory": 14292.0, "status": "done"}, {"code": "N = int(input())\n\nL = [2, 1]\n\nif N <= 1:\n   print(L[N])\n   return\nelse:\n   for i in range(N-1):\n      L.append(L[-1] + L[-2])\n\nprint(L[-1])", "passed": true, "time": 0.3, "memory": 14036.0, "status": "done"}, {"code": "def main():\n    N = int(input())\n    L = [2, 1]\n    for i in range(1, N):\n        L.append(L[i-1]+L[i])\n    print(L[-1])\nmain()", "passed": true, "time": 0.14, "memory": 14188.0, "status": "done"}, {"code": "N = int(input())\nl_list = [2,1]\nfor i in range(2,N+1):\n    a = l_list[i-1] + l_list[i-2]\n    l_list.append(a)\nprint(l_list[N])", "passed": true, "time": 0.14, "memory": 14016.0, "status": "done"}, {"code": "N = int(input())\nL = [0] * (N+1)\nL[0] = 2\nL[1] = 1\nfor i in range(2,N+1):\n    L[i] = L[i-1] + L[i-2]\nprint((L[N]))\n", "passed": true, "time": 0.31, "memory": 14052.0, "status": "done"}, {"code": "n=int(input())\na=2\nb=1\ni=0\nwhile i<n:\n  d=a\n  a=b\n  b=d+b\n  i=i+1\nprint(a)", "passed": true, "time": 0.14, "memory": 14248.0, "status": "done"}, {"code": "N = int (input ())\nL1,L2 = 2,1\nL3 = 1\nx = 1\nfor i in range (N-1):\n  if x == 1:\n    L1 = L1+L2\n    L3 = L1\n    x = 2\n  else:\n    L2 = L1+L2\n    L3 = L2\n    x = 1\nprint (L3)", "passed": true, "time": 0.14, "memory": 14272.0, "status": "done"}, {"code": "N = int(input())\nL = [0] * (N+1)\nL[0] = 2\nL[1] = 1\nfor i in range(2,N+1):\n  L[i] = L[i-1] + L[i-2]\nprint(L[N])", "passed": true, "time": 0.14, "memory": 14292.0, "status": "done"}, {"code": "N = int(input())\nl = [2, 1]\nif N == 1:\n  print(1)\nelse:\n  for i in range(2, N+1):\n    l.append(l[i-2] + l[i-1])\n  print(l[-1])", "passed": true, "time": 0.14, "memory": 14260.0, "status": "done"}, {"code": "n=int(input())\n\nif n==1:\n  print(1)\nelif n==2:\n  print(3)\nelse:\n  ans=0\n  num_1=2\n  num_2=1\n  for i in range(n-1):\n    ans = num_1+num_2\n    num_1,num_2 = num_2, ans\n  print(ans)", "passed": true, "time": 0.14, "memory": 14228.0, "status": "done"}, {"code": "# coding = SJIS\n\nn = int(input())\n\nluca = [2, 1]\n\nif n >= 2:\n    for i in range(n - 1):\n        luca.append(luca[-1] + luca[-2])\n    print(luca[-1])\n\nelse:\n    print(1)", "passed": true, "time": 0.14, "memory": 14088.0, "status": "done"}, {"code": "N = int(input())\nL = [2, 1]\n\nfor i in range(2, N + 1):\n    L.append(L[i - 1] + L[i - 2])\n\nprint((L[N]))\n", "passed": true, "time": 0.14, "memory": 14196.0, "status": "done"}, {"code": "N = int(input())\n\nif N == 1:\n  print(1)\n  return\n\nL1 = 1\nL0 = 2\n\nfor i in range(2,N+1):\n  LC = L1 + L0\n  L0 = L1\n  L1 = LC\n  \nprint(LC)", "passed": true, "time": 0.14, "memory": 14268.0, "status": "done"}, {"code": "import sys\ninput = lambda: sys.stdin.readline().rstrip() \nsys.setrecursionlimit(10**7)\nINF = 10**20\ndef I(): return int(input())\ndef F(): return float(input())\ndef S(): return input()\ndef LI(): return [int(x) for x in input().split()]\ndef LI_(): return [int(x)-1 for x in input().split()]\ndef LF(): return [float(x) for x in input().split()]\ndef LS(): return input().split()\n\ndef resolve():\n    N = I()\n\n    lucas = [0] * (N + 1)\n    lucas[0] = 2\n    lucas[1] = 1\n    for i in range(N - 1):\n        lucas[i+2] = lucas[i] + lucas[i+1]\n\n    print((lucas[-1]))\n\ndef __starting_point():\n    resolve()\n\n__starting_point()", "passed": true, "time": 0.14, "memory": 14344.0, "status": "done"}, {"code": "def __starting_point():\n\n    n = int(input())\n\n    A = [2,1]\n    for i in range(2,n+1):\n        A.append(A[i-2] + A[i-1])\n    print(A[n])\n__starting_point()", "passed": true, "time": 0.14, "memory": 14304.0, "status": "done"}, {"code": "n = int(input())\nl = [0] * (n+1)\nl[0] = 2\nl[1] = 1\n\nif n == 1:\n    ans = l[1]\nelse:\n    for i in range(2, n+1):\n        l[i] = l[i-1] + l[i-2]\n    ans = l[-1]\nprint(ans)", "passed": true, "time": 0.14, "memory": 14076.0, "status": "done"}, {"code": "from functools import lru_cache\nN = int(input())\n@lru_cache(86)\ndef lucas(x):\n  if x == 0:\n    return 2\n  if  x ==1:\n    return 1\n  else:\n  \n    return lucas(x-1) + lucas(x-2)\nprint(lucas(N))", "passed": true, "time": 0.14, "memory": 14232.0, "status": "done"}, {"code": "n = int(input())\nimport sys\ndp = [0]*(n+3)\n\ndp[0]=2\ndp[1]=1\nif n<=1:\n    print(dp[n])\n    return\n\nfor i in range(2,n+1):\n    dp[i]=dp[i-1]+dp[i-2]\n\nprint(dp[n])", "passed": true, "time": 0.14, "memory": 14072.0, "status": "done"}, {"code": "#79B\nN=int(input())\ndata=[2]\ndata.append(1)\nfor i in range(2,N+1):\n    data.append(data[i-1]+data[i-2])\n    \nprint(data[N])   ", "passed": true, "time": 0.14, "memory": 14096.0, "status": "done"}, {"code": "n = int(input())\nl = [2,1]\nif n == 0:\n  print(2)\nelif n == 1:\n  print(1)\nelse:\n  for i in range(n-1):\n    l.append(l[-1]+l[-2])\n  print(l[-1])", "passed": true, "time": 0.14, "memory": 14244.0, "status": "done"}, {"code": "#!/usr/bin/env python3\nimport sys\nsys.setrecursionlimit(10**6)\n\nn = int(input())\n\nif n == 1:\n    print((1))\n    return\n\na = 2\nb = 1\nnow = 3\ncount = 2\nfor i in range(2, n):\n    a = b\n    b = now\n    now = a+b\n\nprint(now)\n", "passed": true, "time": 0.23, "memory": 14304.0, "status": "done"}, {"code": "N = int(input())\nANS = [2, 1]\nfor i in range(1, N):\n    ANS.append(ANS[i]+ANS[i-1])\nprint(ANS[N])", "passed": true, "time": 0.62, "memory": 14260.0, "status": "done"}, {"code": "n = int(input())\n\nlucas = [2, 1]\nfor i in range(2, n+1):\n    lucas.append(lucas[i-1] + lucas[i-2])\n\nprint(lucas[-1])", "passed": true, "time": 0.14, "memory": 14080.0, "status": "done"}, {"code": "n = int(input())\nl = []\nl.append(2)\nl.append(1)\n\nfor i in range(2, n + 1):\n    l.append(l[i - 1] + l[i - 2])\nprint(l[-1])", "passed": true, "time": 0.15, "memory": 14296.0, "status": "done"}, {"code": "N = int(input())\n\nL = [2, 1]\nfor i in range(2, N+1):\n    L.append(L[i-1] + L[i-2])\nprint((L[N]))\n", "passed": true, "time": 0.14, "memory": 14044.0, "status": "done"}, {"code": "N=int(input())\ns=2\nt=1\nfor i in range(0,N):\n    u=s+t\n    s,t,u=t,u,s # s\u306e\u5909\u63db\u3092t\u306b\u3057\u305f\u3002\n    \nprint(s)\n", "passed": true, "time": 0.14, "memory": 14060.0, "status": "done"}, {"code": "N = int(input())\n\n\ndef luca(n):\n    a = 1\n    b = 2\n    for i in range(n):\n        a, b = a+b, a\n    return b\n\n\nprint(luca(N))", "passed": true, "time": 0.15, "memory": 14192.0, "status": "done"}, {"code": "\nN = int(input())\nL = [2, 1] + [0] * (N-1)\nfor i in range(2, N+1):\n    L[i] = L[i-1] + L[i-2]\n\nprint(L[N])", "passed": true, "time": 0.57, "memory": 14072.0, "status": "done"}, {"code": "n = int(input())\ndata = [0]*87\ndata[0] = 2\ndata[1] = 1\nif n >= 2:\n    for i in range(2,n+1):\n        data[i] =data[i-1] + data[i-2]\nprint(data[n])", "passed": true, "time": 0.14, "memory": 14244.0, "status": "done"}, {"code": "#-*-coding:utf-8-*-\nimport sys\ninput=sys.stdin.readline\n\ndef main():\n    numbers=[2,1]\n    number = int(input())\n\n    for i in range(2,number+1):\n        numbers.append(numbers[i-1]+numbers[i-2])\n    print(numbers[-1])\n    \ndef __starting_point():\n    main()\n__starting_point()", "passed": true, "time": 0.16, "memory": 14244.0, "status": "done"}, {"code": "N=int(input())\nL=[0]*(N+1)\nL[0]=2\nL[1]=1\nif N==1 :\n  print(1)\nelse :\n  for i in range(2,N+1) :\n    L[i]=L[i-1]+L[i-2]\n  print(L[N])", "passed": true, "time": 0.15, "memory": 14220.0, "status": "done"}, {"code": "li=[2,1]\nN=int(input())\nfor i in range(N):\n    li.append(li[i]+li[i+1])\nprint((li[N]))\n", "passed": true, "time": 0.14, "memory": 14004.0, "status": "done"}, {"code": "n = int(input())\n\nL0, L1 = 2, 1\nif n == 1:\n    print(L1)\nelse:\n    for _ in range(n - 1):\n        L = L0 + L1\n        L0, L1 = L1, L\n    print(L)", "passed": true, "time": 0.14, "memory": 14152.0, "status": "done"}, {"code": "n = int(input())\n\na = [2,1]\n\nfor x in range(n-1):\n  a.append(a[x] + a[x+1])\n  \nprint(a[-1])", "passed": true, "time": 0.14, "memory": 14044.0, "status": "done"}, {"code": "n = int(input())\nlist_lucas = [2, 1]\nlucas = 0\nfor i in range(0, n - 1):\n    lucas = list_lucas[i] + list_lucas[i + 1]\n    list_lucas.append(lucas)\n    lucas = 0\nprint(list_lucas[-1])", "passed": true, "time": 0.14, "memory": 14140.0, "status": "done"}, {"code": "n = int(input())\na = [2,1]\nfor i in range(2,n+1):\n    a.append(a[i-1]+a[i-2])\nprint(a[n])", "passed": true, "time": 0.14, "memory": 14044.0, "status": "done"}, {"code": "#\n# abc079 b\n#\nimport sys\nfrom io import StringIO\nimport unittest\nfrom functools import lru_cache\n\nsys.setrecursionlimit(10**9)\n\n\nclass TestClass(unittest.TestCase):\n    def assertIO(self, input, output):\n        stdout, stdin = sys.stdout, sys.stdin\n        sys.stdout, sys.stdin = StringIO(), StringIO(input)\n        resolve()\n        sys.stdout.seek(0)\n        out = sys.stdout.read()[:-1]\n        sys.stdout, sys.stdin = stdout, stdin\n        self.assertEqual(out, output)\n\n    def test_\u5165\u529b\u4f8b_1(self):\n        input = \"\"\"5\"\"\"\n        output = \"\"\"11\"\"\"\n        self.assertIO(input, output)\n\n    def test_\u5165\u529b\u4f8b_2(self):\n        input = \"\"\"86\"\"\"\n        output = \"\"\"939587134549734843\"\"\"\n        self.assertIO(input, output)\n\n\ndef resolve():\n    N = int(input())\n\n    print((L(N)))\n\n\n@lru_cache(maxsize=1000)\ndef L(n):\n    if n == 0:\n        return 2\n    elif n == 1:\n        return 1\n    else:\n        return L(n-1) + L(n-2)\n\n\ndef __starting_point():\n    # unittest.main()\n    resolve()\n\n__starting_point()", "passed": true, "time": 0.14, "memory": 14584.0, "status": "done"}, {"code": "from functools import lru_cache\n\n@lru_cache\ndef lucas(n):\n    if n == 0:\n        return 2\n    if n == 1:\n        return 1\n    else:\n        return lucas(n-1)+lucas(n-2)\n\nN = int(input())\nprint((lucas(N)))\n", "passed": true, "time": 0.14, "memory": 14196.0, "status": "done"}, {"code": "N=int(input())\nL=[2,1]\nfor _ in range(N-1):\n    L.append(L[-1]+L[-2])\nprint((L[-1]))\n", "passed": true, "time": 0.14, "memory": 14312.0, "status": "done"}, {"code": "N = int(input())\nres = [2, 1]\n\nfor i in range(N-1):\n    res.append(res[-1] + res[-2])\nprint(res[-1])", "passed": true, "time": 0.14, "memory": 14152.0, "status": "done"}, {"code": "n = int(input())\nli = [2,1]\nfor i in range(1,n):\n    li.append(li[i]+li[i-1])\nprint((li[-1]))\n", "passed": true, "time": 0.14, "memory": 14076.0, "status": "done"}, {"code": "a = 2\nb = 1\nfor i in range(int(input())):\n  a, b = b, a + b\nprint(a)", "passed": true, "time": 0.14, "memory": 14104.0, "status": "done"}, {"code": "n = int(input())\nl = [2, 1]\nfor i in range(n-1):\n    L = l[i] + l[i+1]\n    l.append(L)\nprint(l[n])", "passed": true, "time": 0.13, "memory": 14036.0, "status": "done"}, {"code": "l = [2, 1] + [0] * 100\nfor i in range(2, 87):\n    l[i] = l[i - 1] + l[i - 2]\nprint(l[int(input())])", "passed": true, "time": 0.14, "memory": 14180.0, "status": "done"}, {"code": "n = int(input())\nl = [2, 1]\nfor i in range(2, 90):\n    x = l[i-2] + l[i-1]\n    l.append(x)\n\nprint((l[n]))\n", "passed": true, "time": 0.14, "memory": 14264.0, "status": "done"}, {"code": "\nN = int(input())\nL = [2, 1]\nif N == 1:\n    print(1)\n    return\n\nfor i in range(2, N+1):\n    L[i % 2] = sum(L)\nprint(L[N % 2])", "passed": true, "time": 0.14, "memory": 14188.0, "status": "done"}, {"code": "N = int(input())\n\nL = [2, 1]\nfor i in range(2, N+1):\n    L.append(L[i-2] + L[i-1])\n\nprint(L[-1])", "passed": true, "time": 0.14, "memory": 14176.0, "status": "done"}, {"code": "n = int(input())\n\na = [0] * (n + 1)\na[0] = 2\na[1] = 1\nfor i in range(2, n + 1):\n    a[i] = a[i - 1] + a[i - 2]\n\nprint((a[n]))\n", "passed": true, "time": 0.14, "memory": 14084.0, "status": "done"}, {"code": "n = int(input())\nl = [2, 1]\nfor _ in range(n - 1):\n    l.append(l[-2] + l[-1])\nprint(l[-1])", "passed": true, "time": 0.15, "memory": 14056.0, "status": "done"}, {"code": "N = int(input())\nls = [0] * (N + 1)\n\nls[0], ls[1] = 2, 1\n\nfor i in range(2,N+1):\n  ls[i] += ls[i-1] + ls[i-2]\n  \nprint(ls[N])", "passed": true, "time": 0.14, "memory": 14228.0, "status": "done"}, {"code": "n = int(input())\nif n == 1:\n    print(1)\n    return\nx = 2\ny = 1\nans = 0\nfor i in range(n-1):\n    ans = x + y\n    x = y\n    y = ans\nprint(ans)", "passed": true, "time": 0.14, "memory": 14080.0, "status": "done"}, {"code": "n = int(input())\na,b = 2,1\nfor i in range(n):\n    a,b=b,a+b\nprint(a)", "passed": true, "time": 0.14, "memory": 14080.0, "status": "done"}, {"code": "n = int(input())\nl = [2, 1]\n\nfor i in range(2, n + 1):\n        li = l[i - 1] + l[i - 2]\n        l.append(li)\nprint(l[len(l) - 1])", "passed": true, "time": 0.14, "memory": 14080.0, "status": "done"}, {"code": "lst = list()\nlst.append(2)\nlst.append(1)\n\nn = int(input())\nfor i in range(2, n + 1):\n    ans = lst[i - 2] + lst[i - 1]\n    lst.append(ans)\n\nprint(lst[n])", "passed": true, "time": 0.14, "memory": 14320.0, "status": "done"}, {"code": "n = int(input())\nl = [0] * (n+1)\nl[0] = 2\nl[1] = 1\n\nif n == 1:\n    ans = l[1]\nelse:\n    for i in range(2, n+1):\n        l[i] = l[i-1] + l[i-2]\n    ans = l[-1]\nprint(ans)", "passed": true, "time": 0.14, "memory": 14040.0, "status": "done"}, {"code": "def resolve():\n    '''\n    code here\n    '''\n    N = int(input())\n\n    memo = [0 for _ in range(N+1)]\n    memo[:2] = [2, 1]\n\n    for i in range(2, N+1):\n        memo[i] = memo[i-1] + memo[i-2]\n\n    print((memo[N]))\n\ndef __starting_point():\n    resolve()\n\n__starting_point()", "passed": true, "time": 0.14, "memory": 14216.0, "status": "done"}, {"code": "n = int(input())\nl = [2,1]\n\nfor i in range(2,n+1):\n    l.append(l[i-2]+l[i-1])\n\nprint(l[n])", "passed": true, "time": 0.14, "memory": 14152.0, "status": "done"}]