//利用递归求第n个斐波那契数
//#include <stdio.h>
//int Fib(int n) {
// if (n <= 2) {
// return 1;
// }
// else {
// return Fib(n - 1) + Fib(n - 2);
// }
//}
//
//int main(void) {
// int n = 0;
// int ret = 0;
// scanf("%d", &n);
// ret = Fib(n);
// printf("%d\n", ret);
// return 0;
//}
//利用循环求斐波那契数
#include <stdio.h>
int Fib(int n) {
int a = 1;
int b = 1;
int c = 1;
while (n > 2) {
c = a + b;
a = b;
b = c;
n--;
}
return c;
}
int main() {
int n = 0;
int ret = 0;
scanf("%d", &n);
//TDD - 测试驱动开发
ret = Fib(n);
printf("%d", ret);
return 0;
}