//#include #include #include #include #include #include using namespace std; #define N 10010 #define mod 9973 struct bign { int len, dig[N]; bign() { len = 0, dig[0] = 0; } bign(int k){ len = 0, dig[0] = 0; if(k > 0){ for(; k; k /= 10) dig[len++] = k % 10; len--; } } void output() { for(int i = len; i >= 0; --i) printf("%d", dig[i]); } bign operator + (const bign &b) const { int i, carry; bign c; for(i = carry = 0; i <= len || i <= b.len || carry; ++i) { if(i <= len) carry += dig[i]; if(i <= b.len) carry += b.dig[i]; c.dig[i] = carry % 10; carry /= 10; } c.len = i - 1; return c; } }; bign f[240]; int main(){ f[1] = bign(1); f[2] = bign(2); for(int i = 3; i < 205; ++i) f[i] = f[i-1] + f[i-2]; int n; while(scanf("%d", &n) != EOF){ f[n].output(); puts(""); } return 0; }