#include<bits/stdc++.h> using namespace std; using ll=long; using pll=pair<ll,ll>; #define vec(type,name,...) vector<type>name(__VA_ARGS__) #define each(i,a) for(auto&i:a) #define name4(a,b,c,d,...) d #define rep(...) name4(__VA_ARGS__,rep3,rep2,rep1)(__VA_ARGS__) #define rep1(a) rep3(i,0,a) #define rep2(i,a) rep3(i,0,a) #define rep3(i,a,b) for(ll i=a;i<b;i++) const ll LINF=0x1fffffffffffffff; template <class T>bool update_min(T&a,const T&b){if(a>b){a=b;return 1;}return 0;} template <class T>bool update_max(T&a,const T&b){if(a<b){a=b;return 1;}return 0;} signed main(){ ll n; cin>>n; vector<ll>a(n+1); a[0]=1; rep(n){ a[i+1]+=a[i]; if(i+1<n)a[i+2]+=a[i]; } cout<<a[n]<<endl; }