#include #include #include #include #include #include #include #define MOD 100000000 using namespace std; int num[205][8] , top[205]; int init( int m ) { memset( num , 0 , sizeof(num) ); num[0][0] = 0; top[0] = 0; num[1][0] = 1; top[1] = 0; num[2][0] = 2; top[2] = 0; for( int i=3 ; i<=m ; i++ ) { int tp = max( top[i-2] , top[i-1] ); for( int j=0 ; j<=tp ; j++ ) num[i][j] = num[i-1][j] + num[i-2][j]; for( int j=0 ; j<=tp ; j++ ) { num[i][j+1] += num[i][j] / MOD; num[i][j] %= MOD; } if( num[i][tp+1] > 0 ) tp++; top[i] = tp; } return top[m]; } int main() { int n; int m = init( 200 ); while( scanf( "%d" , &n ) != EOF ) { int k = top[n]; printf( "%d" , num[n][k] ); for( int i=k-1 ; i>=0 ; i-- ) printf( "%08d" , num[n][i] ); printf( "\n" ); } return 0; }