关键词:递归,动态规划
写递归之前一定要考虑的递归中的两个重要概念:递归边界和递归式。
我的解决方案:
#include<stdio.h>
#include<iostream>
using namespace std;
int dp(int N){
//递归出口
if(N==1)return 1; //1块巧克力只有一种方案
else if (N==2)return 2; //2块巧克力有两种方案
else return dp(N-1)+dp(N-2);
}
int main(){
int N;
cin>>N;
cout<<dp(N);
return 0;
}