#include <iostream>
#include <vector>
using namespace std;
//dp[i-1]:第i个dp数组的值就是斐波那契数列第n个的值
//递归公式:dp[i] = dp[i-2]+dp[i-1]
//初始化: dp[0]=1,dp[1]=1
//遍历:从前向后
//验证:打印dp数组
int main() {
int n;
cin>>n;
if(n<=2)
{
cout<<1;
return 0;//return 1;代表程序非正常结束
}
vector<int> dp(n);
dp[0]=1;
dp[1]=1;
for (int i =2; i<n; i++) {
dp[i] = dp[i-2]+dp[i-1];
}
printf("%d",dp[n-1]);
return 0;
}
// 64 位输出请用 printf("%lld")

京公网安备 11010502036488号