// a dynamic programming approach for generating any number of fibonacci number
#include<bits/stdc++.h>
using namespace std;
long long int save[100]; // declare any sized array
long long int fibo(int n){
if(n==0) return 0;
if(n==1) return 1;
if(save[n]!=-1) return save[n]; //if save[n] holds any value that means we have already calculated it and can return it to recursion tree
save[n]=fibo(n-1)+fibo(n-2); // if it come tp this line that means I don't know what is the value of it
return save[n];
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
memset(save,-1,sizeof save);
cout<<fibo(2)<<'
';
return 0;
}