#include <iostream> using namespace std; int result=0; void fun(int rest){ if(rest==0)++result; if(rest>=1){ fun(rest-1); fun(rest-2); } } int main() { int N; cin>>N; fun(N); cout<<result<<endl; } // 64 位输出请用 printf("%lld")
反正都限制了N的范围!直接递归不会超出时间空间范围!