#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")