- #include <iostream>
- using namespace std;
- long long mm[1000000];
- long long ff(int num)
- {
- long long pc = 1;
- if( mm[num] > 0 ) return mm[num];
- else{
- for(int i = 1; i <= num/2; i++)
- pc += ff(i);
- mm[num] = pc;
- return pc;
- }
- }
- int main()
- {
- int num;
- memset(mm,sizeof(mm),0);
- mm[1] = 1;
- cin>>num;
- cout<<ff(num)<<endl;
- return 0;
- }
半数集问题
最新推荐文章于 2024-03-26 16:24:43 发布
本文提供了一个使用递归和动态规划解决特定数列问题的C++实现案例。通过定义一个长整型数组来存储计算结果,避免重复计算,提高了算法效率。程序首先初始化数组,然后通过递归函数计算数列的第n项,并将结果存入数组中以供后续调用。
254

被折叠的 条评论
为什么被折叠?



