#include #include #include #include #include #include using namespace std; struct BigInteger { int len , num[2000]; BigInteger() { memset( num , 0 , sizeof num ); len = 0; } friend BigInteger operator + ( const BigInteger &a , const BigInteger &b ) { BigInteger c; c.len = max( a.len , b.len ); for( int i = 0 ; i < c.len ; i++ ) c.num[i] = a.num[i]+b.num[i]; for( int i = 0 ; i < c.len ; i++ ){ c.num[i+1] += c.num[i]/10; c.num[i] %= 10; } if( c.num[c.len] ) c.len++; return c; } void output(){ for( int i = len-1 ; i >= 0 ; i-- ) cout << num[i]; cout << endl; } } f[300]; int n; void init(){ BigInteger one; one.len = one.num[0] = 1; f[0] = f[1] = one; for( int i = 2 ; i <= 200 ; i++ ) f[i] = f[i-1]+f[i-2]; } int main(){ init(); while( cin >> n ) f[n].output(); return 0; }