为什么超时了@root ,
#include <bits/stdc++.h>
using namespace std;
long long fbnc(long long a) {
if (a == 0)
return 0;
else if (a == 1)
return 1;
else
return fbnc(a - 1) + fbnc(a - 2);
}
int main() {
long long n, p, ans;
cin >> n >> p;
ans = fbnc(n);
cout << ans % p;
return 0;
}
共 2 条回复
超时是因为递归层数太多,这个题用递推来做。当然也可以用记忆化搜索来完成。
帖子里面@无效